对于循环帮助,将数据存储在一个长字符串中

时间:2015-12-12 16:14:34

标签: java loops

这是我正在处理的for循环:

for (int count=1; count<= numofnames; count++){
    System.out.println("Enter a name?");
temp= scan.nextLine();}

temp是一个String,如何将所有以前的名称保存在一个长字符串中,而不是每次循环时都改变temp的值。我基本上在一个名为temp的长字符串中需要X个名称。

2 个答案:

答案 0 :(得分:3)

您可以通过StringBuilder连接输入字符串以获得良好的性能。你想要使用比Scanner更快的输入处理程序。 BuffferedReader就足够了。

String line;
StringBuilder sb = new StringBuilder();
while((line = scan.nextLine()) != null)
   sb.append(line);

使用BufferedReader

String line;
StringBuilder sb = new StringBuilder();
try(BufferedReader br = new BufferedReader(new InputStreamReader(System.in))){
    while((line = br.nextLine()) != null)
       sb.append(line);
}catch(IOException e){
      e.printStackTrace();
}

答案 1 :(得分:0)

不是重新分配temp的值,而是可以使用,例如:

连接到它。
temp += scan.nextLine();
相关问题