子集合
列出 subList(int fromIndex,int toIndex)
这里 fromIndex 是包容性的,toIndex 是独家的。
List list = new ArrayList();
List list1 = list.subList(fromIndex,toIndex);
- 如果列表在给定范围中不存在,则抛出 IndexOutofBoundException。
- 列表 1 上所做的任何更改都会影响列表中的相同更改。这称为备份集合。
- 如果 fromnIndex 大于 toIndex(fromIndex> toIndex),则抛出 IllegalArgumentException。
例:
List<String> list = new ArrayList<String>();
List<String> list = new ArrayList<String>();
list.add("Hello1");
list.add("Hello2");
System.out.println("Before Sublist "+list);
List<String> list2 = list.subList(0, 1);
list2.add("Hello3");
System.out.println("After sublist changes "+list);
输出:
在子
列表之前[Hello1,Hello2] 子列表更改后[Hello1,Hello3,Hello2]
设置 subSet(fromIndex, toIndex)
这里 fromIndex 是包容性的,toIndex 是独家的。
Set set = new TreeSet();
Set set1 = set.subSet(fromIndex,toIndex);
返回的集将在尝试插入其范围之外的元素时抛出 IllegalArgumentException。
映射 subMap(fromKey, toKey)
fromKey 是包容性的,toKey 是独家的
Map map = new TreeMap();
Map map1 = map.get(fromKey,toKey);
如果 fromKey 大于 toKey 或者此映射本身具有受限范围,并且 fromKey 或 toKey 位于范围的边界之外,则它将抛出 IllegalArgumentException。
所有集合都支持支持的集合,这意味着对子集合所做的更改将对主集合进行相同的更改。