java arraylist越界问题

  众所周知,Java中的arraylist的大小是随着我们添加的元素多少而变化的,于是我们习惯性的以为arraylist就是无限大的,其实不然,arraylist也是有边界的。

  当我们调用arraylist.add(object temp)的时候是不会出现数组越界的问题的,但是我们调用arraylist.add(int index, object temp)的时候,就有可能出现数组越界。

  如果我们初始化arraylist后,没有add元素就要按照索引插入元素,那么此时就会爆出数组越界的问题。因为此时arraylist还没有给你索引的地方分配空间。

  解决办法是写一个init()方法,为你要索引的地方分配一个空间,这样就不会出现问题。

public void init() {
    for (int i = 0; i < 8; i++) {
      warland.add(new Dependent(1, 1));
    }
  }

猜你喜欢

转载自www.cnblogs.com/yanzhao-x/p/11368002.html