代码的作用是在[n,m]中找出包含38或4的数的个数  我想问为什么我用indexof时 发现 即使我输入4时 也显示查找不到呢
import java.util.*;public class Main { public static void main(String[] args) {
Scanner zx = new Scanner(System.in);
while (zx.hasNext()) {
int n = zx.nextInt();
int m = zx.nextInt();
if(n == 0 && m == 0 ) break;
int j = 0;
for (int i = n; i <= m; i++) {
String a = Integer.toString(i);
if (a.indexOf(38) != -1 || a.indexOf(4) != -1) {
j++;
}
}
System.out.println(j);
}
}
}

解决方案 »

  1.   

    到java去问效果应该好点~~~
      

  2.   

    a.indexOf("38") != -1 || a.indexOf("4") != -1
      

  3.   

    if (a.indexOf(38) != -1 || a.indexOf(4) != -1) 
    加上双引号
    if (a.indexOf("38") != -1 || a.indexOf("4") != -1) 
      

  4.   

    a.indexOf("38") != -1 || a.indexOf("4") != -1
      

  5.   


    a.indexOf(38) != -1 || a.indexOf(4) != -1)改成a.indexOf(“38”) != -1 || a.indexOf(“4”) != -1)