gpt4 book ai didi

java - 为什么我的第二个阵列没有被完全打印出来?

转载 作者:行者123 更新时间:2023-11-29 03:03:16 26 4
gpt4 key购买 nike

我正在尝试在一列和一行中创建以下数字的表示。

为什么我的第二个阵列没有被完全打印出来?

另外,数字不是以行列方式打印的。这是为什么?

public class MultidimensionalArrays
{

public static void main(String[] args)
{
//initializes rows and columns
//first box = row, second box = column
int firstarray[][] = {{3, 4, 5, 6,} , {8, 9}};

//System.out.println(firstarray[0][1]) = 9;

//initializes another rows and columns
int secondarray[][] = {{11, 12, 13} , {88} , {100, 200, 300} , {33, 35, 37}};

//displays the 1st array
System.out.println("this is the 1st array: ");
display(firstarray);

System.out.println();

//displays the 2nd array
System.out.println("this is the 2nd array: ");
display(secondarray);
}

//makes a method to display out the arrays
public static void display(int x[][])
{
//makes a for-loop that prints out the row
for(int row = 0; row < x.length; row++)
{
//makes a for-loop that prints out the column
for(int column = 0; column < x.length; column++)
{
//sysouts the rows & columns
System.out.print(x[row][column] + "\t");
}
}
}


}

错误代码:

this is the 1st array: 
3 4 8 9
this is the 2nd array:
11 12 13 Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3
at MultidimensionalArrays.display(MultidimensionalArrays.java:37)
at MultidimensionalArrays.main(MultidimensionalArrays.java:24)

最佳答案

您的数组不是矩阵,因此列长不等于行长。事实上,不同的行有不同的列数,所以你必须使用每行的单独长度。

尝试:

for(int row = 0; row < x.length; row++)
{
//makes a for-loop that prints out the column
for(int column = 0; column < x[row].length; column++)
{
//sysouts the rows & columns
System.out.print(x[row][column] + "\t");
}
}

关于java - 为什么我的第二个阵列没有被完全打印出来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33566168/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com