Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.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二维数组值和for循环问题_Java_Arrays - Fatal编程技术网

Java二维数组值和for循环问题

Java二维数组值和for循环问题,java,arrays,Java,Arrays,我刚开始编程java,我是英语新手,请试着理解我的句子 我试图在数组中添加第五个数字。for循环未读取数组中的数字99。我不需要table.length然后添加一个,我想在数组中添加任意数量的数字,而不更改for循环。是否有代码来查找一个框(第一个数组框)中有多少个数字 int[]table={{12,0,0,0,99},{0,0,0,99},{0,0,0,0,0,99}; int max=整数的最小值; 对于(int i=0;i

我刚开始编程java,我是英语新手,请试着理解我的句子

我试图在数组中添加第五个数字。for循环未读取数组中的数字99。我不需要table.length然后添加一个,我想在数组中添加任意数量的数字,而不更改for循环。是否有代码来查找一个框(第一个数组框)中有多少个数字

int[]table={{12,0,0,0,99},{0,0,0,99},{0,0,0,0,0,99};
int max=整数的最小值;
对于(int i=0;i对于(intk=0;k大家好,欢迎来到Java的有趣世界:-D

问题是“内部”数组的长度为5,而外部数组的长度为3。两个循环都使用
table.length
。对于内部循环,请尝试

    for (int k = 0; k < table[i].length; k++) { // Iterate across all the inner arrays
        if (table[i][k] >= max) {
            max = table[i][k];
        }
    }
for(int k=0;k=最大值){
max=表[i][k];
}
}
您还将对该表进行两次迭代,一次查找最大值,一次查找最小值。仅使用几个元素并不太昂贵,但想象一下如果您有数百万个元素。您可以在一次遍历表中组合这两个检查。您还可以通过为表中的值设置一个变量来减少代码量。这意味着您只需要对数组执行一次ess操作。虽然在CPU方面没有多少节省,但它使代码看起来更容易

int[][] table = { { 12, 0, 0, 0 ,99}, { 0, 0, 0, 0, 99}, { 0, 0, 0, 0, 99} };
int max = Integer.MIN_VALUE;
int min = Integer.MAX_VALUE;

for (int i = 0; i < table.length; i++) {
    for (int k = 0; k < table[i].length; k++) {
        int val = table[i][k];
        if (val > max) {
            max = val;
        }
        if (val < min) {
            min = val;
        }
    }
}
System.out.println(max);
System.out.println(min);
int[]table={{12,0,0,0,99},{0,0,0,99},{0,0,0,0,0,99};
int max=整数的最小值;
int min=整数最大值;
对于(int i=0;imax){
max=val;
}
如果(val
Spangen提到的内容绝对正确,只需稍加修改,您就可以在“内部”数组中使用
int[][] table = { { 12, 0, 0, 0 ,99}, { 0, 0, 0, 0, 99}, { 0, 0, 0, 0, 99} };
int max = Integer.MIN_VALUE;
int min = Integer.MAX_VALUE;

for (int i = 0; i < table.length; i++) {
    for (int k = 0; k < table[i].length; k++) {
        int val = table[i][k];
        if (val > max) {
            max = val;
        }
        if (val < min) {
            min = val;
        }
    }
}
System.out.println(max);
System.out.println(min);
for (int k = 0; k < table[i].length; k++) { // Iterate across all the inner array
    if (table[i][k] >= max) {
        max = table[i][k];
    }
}