Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 数组中的值都是相同的_Java - Fatal编程技术网

Java 数组中的值都是相同的

Java 数组中的值都是相同的,java,Java,每次都正确获取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(

每次都正确获取
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]);
intl,j,k=0;
int m[]=新int[10];

对于(l=0;l这条线在内部循环中运行的前9次没有完成任何操作:

k=k*100+(int)a;

它的值是由内部循环的最后一次运行设置的,也就是当
m[l]
也被设置时。修复它应该对您尝试执行的任何操作都有帮助。

问题陈述有点模糊,但看起来将k改为long就可以了

long k = 0;
int l, j = 0;
long m[]=new long[10];

请先缩进您的代码。
sub
len
的值是什么?sub是字符串的子字符串,len是子字符串的数目。这里我一次取一个子字符串,逐字符查找其整数值,并将子字符串的所有值相加。恐怕是谁教您声明变量像这样的函数不应该教计算机编程。变量的作用域不正确会导致很多错误,所有流行语言都支持合理的作用域。请看,我必须取一个字符串,形成长度为10的子字符串,然后对于每个子字符串,我必须使用相同的公式找到“k”,并保存我们从中得到的值将每个子字符串转换成一个整数数组。你能帮我吗?如果你能提供更完整的代码和一些测试数据,有人会更容易帮助你。对原始数据的猜测太多了。