Java - ArrayList默认初始值

Kyl*_*e93 1 java integer default arraylist

在Java中创建Integer类型的arraylist时,默认值是什么?我需要检查arraylist是否已满并且我将获得数组的大小然后获取最后一个索引的值并检查它是否是默认值.

有没有更好的办法?什么是默认值?

希望有道理.干杯

int size = a.size();
int last = a.get(size);
if( last == null )
{
    return true;
}else{
    return false;
}
Run Code Online (Sandbox Code Playgroud)

编辑;

是否有可能创建一个具有最大大小的ArrayList,以阻止它动态扩展?当你创建一个ArrayList并使用size()时会返回实际大小或arraylist中的元素数量吗?当这样做以创建最大尺寸时,默认值是否为空?

public boolean isFull()
{
    int size = a.size();
    int last = 0;
    try{
        last = a.get(size-1);
    }catch (Exception e){
    }
    if( last == null )
    {
        return true;
    }else{
        return false;
    }
}
Run Code Online (Sandbox Code Playgroud)

我目前有这个,它看起来怎么样?这现在有意义吗?

Gra*_*bot 5

声明ArrayList时它是空的.它也是一个动态容器,意味着它会增长,因此您可以询问它是否"满"更多是您需要添加到代码中的约束.

所以,如果你想实现像你描述的目标.

List<Integer> list = new ArrayList<Integer>();
int MAX_ELEMENTS = 5; //Set this to however you want to constrain the datatype

public boolean addElement(Integer value) {
   if (list.size() < MAX_ELEMENTS) {
     list.add(value);
     return true;
   } else {
     return false;
   }
}

public boolean isFull() {
  return (list.size() == MAX_ELEMENTS);
}

public Integer getLast() {
  if (!list.isEmpty())
    return list.get(list.size()-1);
  else
    return null;
}
Run Code Online (Sandbox Code Playgroud)

正如其他人所说,如果你生成一个预设大小的列表:

List<Integer> list = new ArrayList<Integer>(10);
Run Code Online (Sandbox Code Playgroud)

你有一个包含大量10个元素的列表null.如果你添加额外的元素,列表仍然会大于10个元素,除非你像我上面那样限制它.