动态增加列表的大小java

时间:2014-02-19 09:51:50

标签: java list collections size

如果我使用list.add(int, int)方法,如果该位置大于或等于IndexOutBoundException,则会抛出list.size()

我想通过添加null元素(如果必要的话)来增加大小,直到它可以安全地添加一个真实元素为止。

假设我有一个list(list.size()= 0),我想在第三个位置添加5,然后我会得到size等于4的位置列表,以及元素是nullnullnull5

2 个答案:

答案 0 :(得分:0)

尝试使用ensureCapacity(int minCapacity)

ArrayList方法

答案 1 :(得分:0)

    You can do this by adding null elements in the List like:


        import java util.List;
        import java.util.ArrayList;

        public class Hello {
         public static void main(String args[]){
        List<Integer> list = new ArrayList<Integer>();
        list.add(0, null);
        list.add(1, null);
        list.add(2, null);
        list.add(3, 5);

        System.out.println(list);
        }
        }

Now, you will an output [null, null, null, 5]. I think this might serve your purpose.

Or you can use this way:

List list = Collections.nCopies(5,null);
ArrayList<Integer> aList = new ArrayList<Integer>(list);
aList.add(5,5);
System.out.println(aList);

You will get an output as : [null, null, null, null, null, 5]

If this could serve your prupose.