gpt4 book ai didi

java - java打印数组越界

转载 作者:行者123 更新时间:2023-12-01 14:13:10 24 4
gpt4 key购买 nike

我有一个如下所示的对象数组:

1: [volvo, 200] , [jaguar, 900]
2: [bmw, 300]
3: [skoda, 100] , [(no input)] , [(no input)]

<小时/>

这是我仅打印有值(value)区域的方法(内部有一些格式,但这不是问题)。出现越界错误...我需要做什么?谢谢!

        public static void printMat(Car[][] carMat){
int row = 0;
int column = 0;
while ((carMat[row][column] != null)){
System.out.printf("( %-8s : %,9d )", carMat[row][column].getName(), carMat[row][column].getPrice());
if (column == carMat[row].length - 1){
System.out.print("\n");
row++;
column = 0;
} else {
column++;
}
}
}

最佳答案

您已经检查了是否超出当前行的末尾,这很好,但您尚未检查是否已用完行。

row++ 之后,添加一个检查以查看 row 是否超出了 carMat 数组的末尾。

if (row >= carMat.length)
break;

假设您至少有一行。在进入 while 循环之前,您可能需要检查是否至少有一行。

关于java - java打印数组越界,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18324839/

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