尝试检查数字是否为二进制 - 因此用户将键入一个整数&将验证这是否是二进制。我的代码如下&它始终返回False,因此if语句不起作用 - 也尝试转换为字符串但得到相同的结果 - 谢谢
public static void main(String[] args) {
int aa = 5101012;
ArrayList dd = new ArrayList();
while(aa>0){
dd.add(aa%10);
aa = aa/10;}
ArrayList dd1 = new ArrayList();
dd1.add(2);
dd1.add(3);
dd1.add(4);
dd1.add(5);
dd1.add(6);
dd1.add(7);
dd1.add(8);
dd1.add(9);
System.out.println(dd1.contains(dd));}}
答案 0 :(得分:0)
*************************** REGEX短版***************** **************************************** 如果您想缩短代码,可以使用正则表达式:
public static void main(String[] args) {
int aa = 10101;
String test = "" + aa;
System.out.println("" + !test.matches(".*[23456789].*"));
}
这将为true
返回10101
,为false
返回5101012
。
************************************长版********* ************************************************ 如果要查看哪些数字是二进制数字而哪些数字不是二进制数,则应单独检查每个元素:
public static void main(String[] args) {
int aa = 5101012;
ArrayList<Integer> dd = new ArrayList<Integer>();
while(aa>0){
dd.add(aa%10);
aa = aa/10;}
ArrayList<Integer> dd1 = new ArrayList<Integer>();
dd1.add(2);
dd1.add(3);
dd1.add(4);
dd1.add(5);
dd1.add(6);
dd1.add(7);
dd1.add(8);
dd1.add(9);
for(Integer a : dd)
{
System.out.println(dd1.contains(a));
}
}
您试图查看dd1是否包含对象的arraylist,它不是单独包含对象(Integer
)。
答案 1 :(得分:0)
一种方式(不是最优雅)是将其转换为字符串,然后执行:
<dict>
<key>name</key>
<string>Call it something</string> <!-- USE YOUR NAME -->
<key>scope</key>
<string>variable.language.python</string> <!-- USE YOUR SCOPE -->
<key>settings>/key>
<dict>
<key>foreground</key>
<string>#000000</string> <!- PROVIDE HEX RGB COLOR -->
</dict>
</dict>