我正在尝试创建代码,用户可以输入是否要将数字添加到链接列表。每次添加数字时,都会显示新的链接列表,显示数字集合。这是第一堂课:
public class Test {
public static void main(String[] args) {
while(true)
{
LinkedList<Integer> list = new LinkedList<Integer>();
Scanner scan = new Scanner(System.in);
System.out.print("Enter command: ");
String userInput = scan.nextLine();
String [] parts = userInput.split(" ");
String part1 = parts [0];
String part2 = parts[1];
int num = Integer.parseInt(part2);
if (part1.equals("add"))
{
Set test = new Set();
test.addNext(num);
list.add(num);
System.out.println(list.toString());
}
}
}
}
有没有办法让列表打印出来像这样:
Enter command: add 5
5
Enter command: add 8
8 5
Enter command: add 6
6 8 5
答案 0 :(得分:1)
移动
LinkedList<Integer> list = new LinkedList<Integer>();
Scanner scan = new Scanner(System.in);
在while
循环之外,因为每次迭代list
都会被一个全新的迭代覆盖,所以每次打印时它都只有一个元素。
您似乎也希望以相反的顺序显示列表。通常,当您添加元素时,它们会放在列表的末尾。您应该使用addFirst()
将它们放在开头并获得预期的输出。