gpt4 book ai didi

java - IndexOutOfBoundsException 而不是结束循环

转载 作者:行者123 更新时间:2023-12-02 04:14:56 25 4
gpt4 key购买 nike

为什么

int row = 1;
// multiArray[col].length = 6

while(multiArray[col][row] > 1 && row < multiArray[col].length) {
sum += multiArray[col][row];
row++;
}

返回 IndexOutOfBoundsException?

我认为如果 row 变成 6,那么 while 循环就不会运行,而不是返回错误。

最佳答案

&& 运算符是 short-circuit operator 。这意味着如果它可以从左侧操作数得知结果,那么它就不会计算右侧。

切换操作数的顺序,因此首先进行入界检查,如果失败,则不会进行数组值检查,这会在计算时抛出异常。

while(row < multiArray[col].length && multiArray[col][row] > 1) {

关于java - IndexOutOfBoundsException 而不是结束循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33424211/

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