每次都获得k
的值,但最后一个for循环中数组m[l]
中的值都是相同的。
int l,j,k=0;
int m[]=new int[10];
for(l=0;l<len;l++){
for(j=0;j<10;j++){
char a= sub.charAt(j);
k=k*100+(int)a;
}
System.out.println("k=" +k);
m[l]=k;
System.out.println(m[l]);
}
for(l=0;l<len;l++)
System.out.println("outside all loop m[l] = " +m[l]);
答案 0 :(得分:0)
这条线在内循环中运行的前9次没有完成任何事情:
k=k*100+(int)a;
它的值仅由内循环的最后一次运行设置,也就是m[l]
也被设置。修复这应该有助于你想要做的任何事情。
答案 1 :(得分:0)
问题陈述有点模糊,但看起来将k改为long就可以了。
long k = 0;
int l, j = 0;
long m[]=new long[10];