关于Java自定义方法内部进行数值相等比较产生的问题

我的建议就是不要在函数内部进行例如整数之类的相等比较,不管怎样,总是false,我也不知道为啥,例如下面的这个程序,如果我在自定义方法内部进行比较的话,一定出错,不信可以自己试试,但是在主方法内部进行比较时没有问题,so,我认为还是不要在方法内进行比较,这个原因还有待我考证,再说吧…

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import java.util.Scanner;

public class L2_2 {
public static int loop(int x) {
int[] num=new int[8];
int k=0,sum=0;
for(int i=10;x!=0; ) {
num[k]=(x%10);
//System.out.print(num[k]);
k++;
x/=10;
}
if(k>1) {
for(int i=0;i<(k-1);i++) {
for(int j=i;j<(k-1);j++)
num[i]*=10;
sum+=num[i];
}
}
sum+=num[k-1];
//System.out.println(sum);
return sum;

}

public static void main(String[] args) {
Scanner input=new Scanner(System.in);
int a=input.nextInt();
int b=input.nextInt();
for(int i=a;i<=b;i++) {
if(loop(i)==i) {
System.out.println(i);
}
}
input.close();
}
}

完!