关于java:你好我想要,我创建一个存储名称的程序,并在写“停止”结束时停止,程序显示存储在此的名称

Hello I want, I make a program that stores names and stop when writing“stop” ends and the program displays the names stored in this

我制作了一个程序,它存储名称,并在写入"stop"时停止,程序显示存储在该代码中的名称……此代码显示您输入的姓氏我想显示所有名称

公共静态void main(string[]args){

1
2
3
4
5
6
7
8
9
10
11
12
13
14
  Scanner sc = new Scanner(System.in);      
     System.out.println("Enter The name :");
     String name = sc.next();

     while (!"stop".equals(name)){
         System.out.println("please entrr new name : ");
         name = sc.next();


}
     System.out.println(name);

}
  }


存储数据的问题是您实际上必须将数据存储在某个地方;)。您可以使用StringArray或几乎任何类型的Collection。在这种情况下,我认为简单的ArrayList是最好的。因此,创建列表:

1
List<String> names = new ArrayList<>();

然后使用add()方法将元素附加到列表中。例如:

1
names.add(name);

您可以使用如下内置的toString()方法轻松打印输出:

1
System.out.println(names);

或者迭代列表并自己打印。请注意,您可能不想在列表中存储"stop"字符串。


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public static void main(String[] args) {
        ArrayList<String> a = new ArrayList<String>(); // declaring dynamic array
        Scanner sc = new Scanner(System.in);
        System.out.println("Enter The name :");
        String name = sc.next();
        int i = 0;

        while (!"stop".equals(name)) {

            System.out.println("please entrr new name : ");

            name = sc.next();
            a.add(name); // each time you add your name to the array and store
            i++;

        }
        for (int j = 0; j < a.size(); j++)
            System.out.println(a.get(j));

    }

选中这个选项,它会起作用,因为在代码中,您不会在任何地方存储名称,每次覆盖它时,都会使用arraylist存储名称,然后可以在任何地方使用它。