arraylist isEmpty()的疑问和疑问

时间:2012-07-30 10:28:53

标签: java list arraylist

我有疑问。 我想检查我的指定索引的ararylist是否索引是空的。 用户可以将7个项目的输入存储到我的arraylist中(索引0到6)。 所以我想检查索引7是否为空,如果它是空的,我将循环回我的RoomSelection()。

我正在使用roomInfo(4+ xx)IsEmpty。

IsEmpty命令是否用于检查整个arraylist是否为空?

如果要检查整个arraylist,我可以用什么方法来检查索引7是否为空?

for (int x = 0; x < (Integer) roomInfo.get(2); x++) {//start of number of room loop(to check how many rooms user input)

    for (int i = 0; i < (Integer) roomInfo.get(4 + xx); i++) { //start of number of add-on loop(to check how many add-on user input)


        System.out.println("addOns array contains what? : " + addOns);    // for my own reference
        System.out.println("Enter Add-On option");
        ao2 = input.nextInt();
        while (ao2 > 4) {
            System.out.println("Please enter again! Choose only option 1 to 4");
            ao2 = input.nextInt();
        }
        addOnOpt = addOn[ao2 - 1];
        addOns.add(addOnOpt);
        addOnPrice = priceAdd[ao2 - 1];
        addOns.add(addOnPrice);
        System.out.println("Enter quantity required for Add-On option " + (i + 1) + ": ");
        quan = input.nextInt();
        addOns.add(quan);
        xx += 3;
        System.out.println(" not null yet");
        if ((roomInfo.isEmpty(4 + xx) == true) {//if condition to check whether is the arrayllist of position is not null
            System.out.println("null!");
            xx = 0;
            Selection();
        }


    }// end of add-on loop

}//end of number of room loop

5 个答案:

答案 0 :(得分:3)

如果列表中没有项目,

isEmpty()将返回true。

要知道是否有第7项,请使用size()方法检查列表的大小(优于或等于7)。

答案 1 :(得分:1)

  

的isEmpty()             测试此列表是否没有元素。

     

“如果要检查整个arraylist,我可以采用其他方法   用来检查索引7是否为空?“

假设你有这个:

ArrayList<abc> list=new ArrayList<abc>();

abc.size()返回列表中的元素数。 如果要检查索引8处的元素是否存在,那么简单的方法是查看size是否至少返回9。 所以:

int indexExists=8;
if(abc.size()>indexExists)
  //do whatever with abc.get(indexExists)
else
  //abc.get(8) will return a null pointer exception

检查此链接以获取ArrayList http://docs.oracle.com/javase/1.4.2/docs/api/java/util/ArrayList.html

上的其他方法

答案 2 :(得分:1)

arraylist上的

isEmpty()函数用于检查整个arraylist是否为空。 你可以拿出每个元素并检查。

答案 3 :(得分:0)

如果ArrayList有七个或更少的项目,或者您在索引7中添加了null,则第八个项目(索引7)将为“空”;你需要测试这两个条件:

if(roomInfo.size() < 8 || roomInfo.get(7) == null) {
    // index 7 is "empty"
}

答案 4 :(得分:0)

IsEmpty()方法仅检查列表是否没有元素。

http://docs.oracle.com/javase/6/docs/api/java/util/ArrayList.html#isEmpty%28%29

当元素添加到ArrayList时,其容量会自动增加,因此要检查第7个位置,请使用.size()检查列表的大小