累积字符串并打印出所有这些字符串

时间:2015-04-22 02:22:50

标签: java string

我试图弄清楚如何在for循环中累积用户输入,然后用一个system.out.print打印出来。这是我的问题测试代码。 因此,例如,如果用户键入:Mike为他的名字,而Joe,Jack,Dave为其他名称,如何打印它们都只有一个变量,因为变量的数量是不知道的,因为用户有这个决定。如果没有stringbuilder并且没有数组,也可以这样做吗?

import java.util.Scanner;
public class Accumulate {

public static void main(String[] args) {
String othernames = " ",name;
int count,n;
Scanner kybrd = new Scanner(System.in);
System.out.println("Enter your name ");
name = kybrd.nextLine();
System.out.println("How many other names would you like to add ? ");
count = kybrd.nextInt();
kybrd.nextLine();

for(n=0;n<count;++n){

System.out.println("Enter other names ");
othernames = kybrd.nextLine();



}

System.out.println("Other names are "+othernames + " And your name is "+ name);

}

}

2 个答案:

答案 0 :(得分:1)

您可以递归调用它,例如:

Scanner sc = new Scanner(System.in);
String s;
while(condition) {
    s = s + sc.nextLine();
}

这将始终连接您输入的行,您还可以添加逗号,空格或任何您想要添加的内容。

答案 1 :(得分:0)

关于使用除StringBuilder以外的对象的问题,您可以使用List<String>并在最后一步为其构建字符串。 如果您需要更复杂的数据结构,可以使用Map<String, String>