"我在这里。"
"我在这里等你很久了。"
"我希望如此。那我们继续吧。"
"我将向您介绍一个超级全功能的集合实用程序类。"
"我已经激动得浑身发抖了。"
"太好了。那么让我们开始吧。以下是 Collections 类的方法:"
| 代码 | 解释 |
|---|---|
| boolean addAll(Collection<? super T> c, T... elements) | 将传递的元素添加到传递的集合中。 这个方法可以像这样方便地调用:Collections.addList(list, 10,11,12,13,14,15) |
| Queue<T> asLifoQueue(Deque<T> deque) | 返回一个由双端队列组成的"普通队列"。 |
| int binarySearch(List<? extends T> list, T key, Comparator<? super T> c) | 对列表中的关键元素执行二进制搜索。 列表必须排序。 您可以指定一个比较器来比较元素。 |
| Collection<E> checkedCollection(Collection<E> c, Class<E> type) | 检查集合 c 的所有元素是否属于特定类型。 List、Map、Set 和 SortedSet 存在类似的方法。 |
| void copy(List<? super T> dest, List<? extends T> src) | 将 src 列表复制到 dest 列表。 |
| boolean disjoint(Collection<?> c1, Collection<?> c2) | 检查集合不包含公共元素 |
| void fill(List<? super T> list, T obj) | 用元素 obj 填充列表 |
| int frequency(Collection<?> c, Object o) | 计算对象 o 在集合 c 中存在的次数 |
| int indexOfSubList(List<?> source, List<?> target) | 确定目标列表在源列表中第一次出现的索引。 原理类似于String.indexOf("some string") |
| int lastIndexOfSubList(List<?> source, List<?> target) | 确定目标列表在源列表中最后一次出现的索引。 类似于 String.lastIndexOf("some string") |
| T max(Collection<? extends T> coll) | 搜索集合中的最大数量/值。 我们如何找到 6 个数字中的最大值? Collections.max(Arrays.asList(51, 42, 33, 24, 15, 6)); |
| T min(Collection<? extends T> coll) | 在集合中搜索最小值。 |
| List<T>nCopies(int n, To) | 创建一个虚拟集合,其中 o 元素出现 n 次。 |
| boolean replaceAll(List<T> list, T oldVal, T newVal) | 用 newVal 元素替换列表中的所有 oldVal 元素 |
| void reverse(List<?> list) | 反转列表。 |
| void shuffle(List<?> list) | 随机打乱列表的元素。 |
| List<T>singletonList(To) | 返回一个由一个传递的元素组成的不可变列表。 Map、Set 和 SortedSet 存在类似的方法。 |
| void sort(List<T> list) | 按升序对列表进行排序。 |
| void swap(List<?> list, int i, int j) | 交换列表的元素 |
| Collection<T>synchronizedCollection(Collection<T> c) | 将此集合包装在一个同步的副本中。 List、Map、Set 和 SortedSet 存在类似的方法。 |

"哇!是的,这是一个完整的武器库,我几乎没有使用过它。"
"其实,我今天的课就到这里了。"
"看看这些方法,找出你最有可能使用的方法。"
"或者更好的是,研究它们。它们会对你有用。"
"谢谢你,Rishi。我去学习了。"