这只是我挑战自己解决的一个简单问题:将名称添加到 ArrayList。我认为问题与我用来填充 ArrayList 和 Scanner 的 while 循环有关。
我尝试制作两个单独的 Scanner
对象,但循环仍然在不应该终止的时候终止。
import java.util.ArrayList;
import java.util.Scanner;
public class MyArrayLiat {
public static void main(String[] args) {
// TODO Auto-generated method stub
String finished = "n";
Scanner keyboard = new Scanner(System.in);
ArrayList<String> myArrayList = new ArrayList<String>();
while(finished == "n")
{
System.out.println("Enter data: ");
myArrayList.add(keyboard.nextLine());
System.out.println("Are you finished? y or n");
finished = keyboard.nextLine();
}
System.out.println("myArrayList: " + myArrayList);
}
}
Enter data:
Trevor
Are you finished? y or n
n
myArrayList: [Trevor]
它应该继续获取名称,直到我输入 n,但它会在仅输入第一个名称后终止。
最佳答案
比较对象时必须始终使用equals
,而不是==
。在 while 条件下尝试 finished.equals(“n”)
关于java - 如何向 String 数据类型的 ArrayList 添加数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57237812/