gpt4 book ai didi

java - 读取文本文件,for in while 与 while in for (java)

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

这是一个非常简单的学校练习代码示例。我让它工作了,但我不明白为什么我的第一个想法不起作用。我的第一个想法是双 for 循环中的 while 循环(参见注释/* */)。如果我使用这些循环,它会给我一个充满零的数组(有一个文件integer.txt,其中包含相同方向的随机数,这不是问题)。

与 sc.hasNextInt() 有关系吗?我真的不明白为什么它会以这种方式工作,而不是其他方式。

感谢您提前解释。

public static void main(String[] args) throws IOException {
String filename = "integer.txt";
FileReader fr = new FileReader(filename);
Scanner sc = new Scanner(fr);

int[][] getallen = new int[2][5];

/*for(int i = 0; i < 2; i++){
for(int j = 0; j < 5; j++){
while(sc.hasNextInt()){
getallen[i][j] = sc.nextInt();
}
}
}*/



while(sc.hasNextInt()){
for(int i = 0; i < 2; i++){
for(int j = 0; j < 5; j++){
getallen[i][j] = sc.nextInt();
}
}
}

for(int i = 0; i < 2; i++){
for(int j = 0; j < 5; j++){
System.out.print(getallen[i][j] + " ");
}
System.out.println();
}


System.out.println("Ok.");
sc.close();
}

最佳答案

为什么

   for(int i = 0; i < 2; i++){
for(int j = 0; j < 5; j++){
while(sc.hasNextInt()){
getallen[i][j] = sc.nextInt();
}
}
}

这段代码不起作用?

因为一旦它到达 while 循环,它就会一次又一次地覆盖相同的索引值。

关于java - 读取文本文件,for in while 与 while in for (java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24137160/

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