【发布时间】:2013-10-18 18:21:36
【问题描述】:
我在从用户输入数据填充 String 数组时遇到问题。这是我的问题的一个简单示例:
import java.util.Scanner;
public class TestArray {
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.println("Enter a number between 1 and 5");
int number = input.nextInt();
System.out.println("Now enter " + number + " names");
String names = input.next();
String[] nameList = new String[number];
for(int i = 0; i < number; i++){
nameList[i] = input.next();
System.out.println(nameList[i]);
}
}
}
我不知道为什么这只是打印出输入的姓氏。我最终要寻找的是打印出每个名字。我也尝试过使用input.nextLine(),但没有成功。
任何提示或指示将不胜感激。
【问题讨论】:
-
这不是完整的代码。
-
names变量有什么意义,为什么它会消耗第一个input.next()? -
@RohitJain 它只缺少三个右括号....
-
对我来说很好,只需删除声明 names 变量的行。
-
请原谅我没有把右括号放在我上面的代码中,我认为这会被理解。无论如何,当名称变量被删除时,这确实有效,但是,它们在每次输入后打印。我希望在用户全部输入后一次性打印出来。