我正在编写一个程序来从给定的.txt文件中获取项目并将它们放入一个数组中,然后从该数组中根据数字将其打印为一个字符。由于某种原因,它不断打印3个空格,然后在符号处打印8个,创建一个新行并无限重复。我已经尝试过一个switch语句(已注释掉),但它做了同样的事情。 cloudberry是从中读取的数组,它包含所有正确的数字。
while (read.hasNextLine()) {
int nutmeg = 0;
for (int x = 0; x < cloudberry.length;x++ ){
for (int y = 0; y < cloudberry[x].length;y++){
nutmeg = cloudberry[x][y];
switch (nutmeg){
case 1:
System.out.print("@");
break;
case 2:
System.out.print("+");
break;
case 3:
System.out.print(" ");
break;
}
}
}
}
答案 0 :(得分:2)
您的代码检查是否有新行,但您实际上从未读过它,因此总是读取相同的行并且外部循环无限迭代。
代码应该是这样的:
while (read.hasNextLine()) {
String line = read.nextLine();
...
}