java是一种列表,当以大于当前列表大小的索引插入元素时,该列表会自动调整大小
如果在大于当前列表大小的索引处添加元素而不引发任何RuntimeException,我如何创建一个List<T>
来重新调整大小。考虑下面的代码示例:
List<String> myList = new ArrayList<String>();
// Assuming current list size is 10, Let's insert at a very large index.
int index = 10000;
myList.add(index, "test");
如果索引超过列表大小,添加操作将导致IndexOutOfBoundException
我希望这个列表的填充比较稀疏,所以它的大小应该与非空值的数量成比例
# 1 楼答案
在java中实现稀疏列表最简单的方法就是使用哈希映射
要将元素添加到列表中,请执行以下操作:
要删除元素,请执行以下操作:
要查询元素,请执行以下操作:
如果需要区分null和not set,可以这样做
在这种情况下,列表将不会保留元素的顺序,如果这很重要,可以将HashMap替换为TreeMap