0

我需要一个程序的帮助,我必须不断地从用户那里获取字符串输入,直到用户输入字符串“end”。然后我必须打印用户输入的所有输入,直到“结束”。我尝试使用 for 循环,但我无法得到它。

4

3 回答 3

2

使用java.util.Scanner读取并在 while 循环的条件下不断检查用户输入。

于 2012-12-31T13:08:51.860 回答
1

这是一个使用 I/O API 的示例:

try{
    BufferedReader br = 
                  new BufferedReader(new InputStreamReader(System.in));

    ArrayList<String> inputs = new ArrayList<String>();
    String input;

    while((input=br.readLine())!=null){
        if(input.equalsIgnoreCase("end")) {
            break;
        }
        inputs.add(input);
    }
    for(String str: inputs) {
        System.out.println(str);
    }

}catch(IOException io){
    io.printStackTrace();
}
于 2012-12-31T13:37:32.450 回答
1

尝试

List<String> list = new ArrayList<>();
    Scanner sc = new Scanner(System.in);
    while(sc.hasNext()) {
        String s = sc.nextLine();
        if (s.equals("end")) {
            break;
        }
        list.add(s);
    }
    for(String s : list) {
        System.out.println(s);
    }

或者

StringBuilder sb = new StringBuilder();
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
for(;;) {
    String s = br.readLine();
    if (s.equals("end")) {
        break;
    }
    sb.append(s).append("\n");
}
System.out.println(sb);
于 2012-12-31T13:14:12.457 回答