如何檢查列表是否爲空?如果是這樣,則系統必須給出消息列表爲空。如果不是,則系統必須給出消息列表不爲空。 用戶可以輸入號碼-1
來停止程序。 這是我現在的代碼,但這不起作用,它總是說'列表不是空的'。Java ArrayList - 檢查列表是否爲空
import java.util.*;
import javax.swing.JOptionPane;
public class ArrayListEmpty
{
public static void main(String[] args)
{
List<Integer> numbers = new ArrayList<Integer>();
int number;
do {
number = Integer.parseInt(JOptionPane.showInputDialog("Enter a number (-1 to stop)"));
numbers.add(number);
} while (number != -1);
giveList(numbers);
}
public static void giveList(List<Integer> numbers)
{
if (numbers != null)
JOptionPane.showMessageDialog(null, "List isn't empty");
else
JOptionPane.showMessageDialog(null, "List is empty!");
}
}
你總是得到的原因「列表不爲空」的消息是,因爲你是你實例,並添加了一些給它檢查後。即使用戶輸入-1,它仍然會被添加到列表中。 – jonhopkins
'null'和一個空列表不是一回事。 – SLaks
您[閱讀javadocs](http://docs.oracle.com/javase/7/docs/api/java/util/List.html#isEmpty(%29)...但是,似乎你沒有明白'null'是什麼意思,這是一個更大的問題。 –