如何查看是否填充了一个arraylist

时间:2012-12-11 21:07:56

标签: java

您好我正在创建一个使用arraylists的应用程序(练习目的不是真正的应用程序) 我已经创建了一个方法,它给出了数学的答案,但前提是arraylist不包含任何对象。出于某种原因,我总是在if / else构造中看到else。

以下是检查数组列表是否包含对象的方法

public void sluitRegistratie() {

    aantalBezoekers = bezoeker.size();

    if(!(aantalBezoekers >= 0)) {

        String str = "Gemiddelde tijd bezoekers: " + (gesommeerdeTijd / aantalBezoekers);

        JOptionPane.showMessageDialog(null, str);
    }
    else {
        JOptionPane.showMessageDialog(null, "Bezoekers zijn nog niet weg");
    }

}

6 个答案:

答案 0 :(得分:9)

ArrayList有一个isEmpty()方法,如果arraylist为空,将返回true,否则为false。所以看起来你想要if(bezoeker.isEmpty())...

答案 1 :(得分:3)

ArrayList的大小永远不会是负数,因此您对!size()> = 0的检查永远不会成立。只需检查size()== 0。

答案 2 :(得分:3)

if(!(aantalBezoekers >= 0))

与:

相同
if(aantalBezoekers < 0)

换句话说,当长度小于零时,但这不可能发生。

答案 3 :(得分:1)

ArrayList至少可以包含0个元素,因此!(aantalBezoekers >= 0)始终为false,并且您将始终位于else部分。

答案 4 :(得分:1)

if(!(aantalBezoekers >= 0)) {

基本上意味着只有当 aantalBezoekers 不大于零时才执行。

如果您想检查您的列表是否为零,请使用以下内容:

if(bezoeker.size()>0){
  System.out.pritnln("bezoeker is greater than zero " + bezoeker..size());
 } 
 else {
  System.out.pritnln("Mahn, my bezoeker is Empty " + bezoeker..size());
  }

你也可以简单地使用ArrayList.isEmpty()方法检查一个arraylist是否为空。

if(bezoeker.isEmpty()) {

答案 5 :(得分:0)

那是因为

!(aantalBezoekers >= 0)

表示

not greater than or equal to zero

相当于

less than zero

永远不会发生。