我正在寻找一个可以填补空白的集合。目标是:
null
初始化的解决方法是行不通的。subList
方法需要根据索引间隔访问子列表示例用例:
List<Integer> list = /* ? */;
list.add(0,5);
list.add(1,4);
list.add(5,3);
for( Integer i : list )
{
System.out.print( i + " " );
}
/* desired output : "5 4 3 "*/
答案 0 :(得分:5)
使用Map<Integer,Integer>
。键是你的索引,值是列表的值。
对于您的子列表要求,也许TreeMap<Integer,Integer>
可以正常工作,因为它可以对键进行排序,并且可以轻松迭代子列表。
当然这意味着您无法使用List
界面。如果您必须使用List
界面,则可以使用List
支持自己的TreeMap
实施(例如,list.add(5,3)
会调用map.put(5,3)
)。< / p>
答案 1 :(得分:0)
您可以使用Map
并仅设置所需的密钥。
如果需要,您可以保留广告订单,请查看:Java Class that implements Map and keeps insertion order