gpt4 book ai didi

java - 为什么我必须初始化 "j"?

转载 作者:行者123 更新时间:2023-12-01 08:11:09 27 4
gpt4 key购买 nike

这里是来自 docs.oracle 的示例代码

class BreakWithLabelDemo {
public static void main(String[] args) {

int[][] arrayOfInts = {
{ 32, 87, 3, 589 },
{ 12, 1076, 2000, 8 },
{ 622, 127, 77, 955 }
};
int searchfor = 12;

int i;
int j = 0;
boolean foundIt = false;

search:
for (i = 0; i < arrayOfInts.length; i++) {
for (j = 0; j < arrayOfInts[i].length;
j++) {
if (arrayOfInts[i][j] == searchfor) {
foundIt = true;
break search;
}
}
}

if (foundIt) {
System.out.println("Found " + searchfor + " at " + i + ", " + j);
} else {
System.out.println(searchfor + " not in the array");
}
}}

这是我的问题:为什么我必须在执行嵌套 for 循环之前初始化变量 j ?如果我不这样做,代码编译时会出现错误。

提前致谢。

最佳答案

您必须初始化 j,因为编译器不知道在最终 if< 中访问它之前,它是否会在内部 for 循环中初始化。/ 声明。

就编译器而言,外部 for 循环体可能不会被执行。

关于java - 为什么我必须初始化 "j"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17221155/

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