我有一个关于从java控制台读取字符串的问题。当我输入每行的单词时,直到我停止"停止"所有这些单词都应存储在一个字符串数组中。
我的输入将是:
苹果
芒果
葡萄
停止----->停止字符串在这里结束
所有3个水果名称都将存储在temp
。
但是当我输入一个单词并希望通过单击“输入”转到下一行来键入另一个单词时,它会打印输出。
我该如何修改?
Scanner scanner=new Scanner(System.in);
System.out.println("Enter the words");
String temp=scanner.nextLine();
答案 0 :(得分:1)
您的问题是您正在从控制台读取一行并打印出来。
你应该做的是继续阅读行,直到"停止",这可以通过while循环来完成。
此代码应该适合您:
Scanner scanner = new Scanner(System.in);
System.out.println("Enter the words");
String input = scanner.nextLine(); // variable to store every input line
String fruits = ""; // this should store all the inputs in one string
while(! input.equals("stop")) {
fruits += input + ","; // using comma to separate the inputs
input = scanner.nextLine();
}
String[] res = fruits.split(","); // splitting the string to have its content in an array