我正在使用数组,我想创建一个列表,以便用户可以为其设置长度值,然后用户还可以向其设置的长度添加一些String值二重奏。我希望程序向我展示用户输入给用户的列表(只是练习),我发现next()
和nextLine()
的不同用法是nextLine
()方法无法正常工作,因为我想添加尽可能多的方法我想对Array进行字符串操作。这是我在想什么:
System.out.println("Welcome to addingCourse wizard :)");
System.out.println("Please enter the amount of your course: ");
int z = input.nextInt();
String[] course = new String[z];
for (int i = 0; i < course.length ; i++) {
course[i] = input.nextLine();
}
System.out.println("Ok. Here is your list...");
for (int i = 0; i < course.length; i++) {
System.out.println(course[i]);
}
问题是nextLine()
不允许我们在数组中添加项目。例如,如果您希望列表为100,尽管next()
仅允许输入99个项目方法允许course.length
个项目并打印所有项目
答案 0 :(得分:0)
看看这些行
int z = input.nextInt();
String[] course = new String[z];
for (int i = 0; i < course.length ; i++) {
course[i] = input.nextLine();
}
每当您按下 enter 键时,都会创建一个新行 / n 字符。一旦您在第一行读取了整数,nextInt就不会消耗该char。在打印行之后,请仔细查看输出,第一行是空行。
要使用此新行,请在完成读取int之后立即添加另一个nextLine()。
int z = input.nextInt();
input.nextLine(); //Consumes the new line character