Java 如何从ArrayList打印输入

Java 如何从ArrayList打印输入,java,arraylist,user-input,Java,Arraylist,User Input,我需要编写一个程序,不断要求用户输入。但是,当用户输入“无”时,程序应停止要求输入,并在输入“无”之前打印出所有输入内容。(不包括“无”) 我使用的是数组列表。然而,当我输入“无”时,程序仍然要求用户输入。 这是我的密码: import java.util.ArrayList; import java.util.List; import java.util.Scanner; public class ShoppingList { public static void main(String[

我需要编写一个程序,不断要求用户输入。但是,当用户输入“无”时,程序应停止要求输入,并在输入“无”之前打印出所有输入内容。(不包括“无”)

我使用的是数组列表。然而,当我输入“无”时,程序仍然要求用户输入。 这是我的密码:

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class ShoppingList {

public static void main(String[] args) {

    List<String> Items = new ArrayList<String>();

    Scanner keyboard = new Scanner(System.in);
    System.out.println ("Enter name of item: ");

    String item;

    while(keyboard.hasNextLine()) {
        item = keyboard.nextLine();

        if (item != "None") {
            System.out.println("Item added: " + item);
            Items.add(item);
    }
      else
       break;
    }

    System.out.println("End of list");
    System.out.println();

    for (String i : Items) {
        System.out.println(i);
         }

    }

}
import java.util.ArrayList;
导入java.util.List;
导入java.util.Scanner;
公共类购物清单{
公共静态void main(字符串[]args){
列表项=新建ArrayList();
扫描仪键盘=新扫描仪(System.in);
System.out.println(“输入项目名称:”);
字符串项;
while(keyboard.hasNextLine()){
item=keyboard.nextLine();
如果(项目!=“无”){
系统输出打印项次(“添加项:+项);
项目。添加(项目);
}
其他的
打破
}
System.out.println(“列表末尾”);
System.out.println();
用于(字符串i:项目){
系统输出打印LN(i);
}
}
}

因此您需要更改:

if (item != "None")
致:

至于字符串,则使用equals()函数。!=不适用于这种情况。

您可以使用以下方法:

import java.util.ArrayList;
导入java.util.List;
导入java.util.Scanner;
公共类购物清单{
公共静态void main(字符串[]args){
列表项=新建ArrayList();
扫描仪键盘=新扫描仪(System.in);
while(true){
系统输出打印(“输入项目名称:”);
字符串项=keyboard.nextLine();
如果(!item.equalsIgnoreCase(“无”)){
项目。添加(项目);
系统输出打印项次(“添加项:+项);
}否则就断了;
}
System.out.println(“列表末尾”);
System.out.println();
用于(字符串i:项目){
系统输出打印LN(i);
}
}
if (!item.equals("None"))