我正在尝试创建一个字符串恢复程序,在其中输入字符串并将它们存储在数组中 - 数组完成后,它会向后打印内容 -如果用户输入退出,程序将停止并向后打印,而不将退出存储在数组中
但是我的代码没有打印最后一个条目,我不确定为什么?
import java.util.*;
import java.io.*;
class StringRevert {
public static void main(String[] args) {
String buffer[];
Scanner scan = new Scanner(System.in);
System.out.println("Enter Size: ");
int num = scan.nextInt();
buffer = new String[num];
String read = scan.nextLine();
for(int i=0; i<buffer.length; i++) {
if(read.equals("quit")) {
break;
} else {
buffer[i] = read;
}
read = scan.nextLine();
}
for(int k=buffer.length -1; k>=0; k--) {
System.out.println(buffer[k]);
}
}
}
最佳答案
将 for 循环替换为:
String read = null;
for(int i=0; i<buffer.length; i++) {
read = scan.nextLine();
if(read.equals("quit")) {
break;
} else {
buffer[i] = read;
}
}
您想在循环的开头而不是末尾读取新行。
关于java - 向后打印数组 - 不打印最后一个条目! - java ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30143153/