欢迎访问宙启技术站
智能推送

Collections类中的常用函数及示例

发布时间:2023-07-02 20:36:26

Collections类是Java中提供的一个工具类,用于操作各种集合的工具方法。下面是Collections类中常用的函数及示例:

1. sort(List<T> list):对List进行升序排序。

List<Integer> numbers = new ArrayList<>(Arrays.asList(3, 1, 2));
Collections.sort(numbers);
System.out.println(numbers); // Output: [1, 2, 3]

2. binarySearch(List<? extends Comparable<? super T>> list, T key):使用二分查找算法在有序List中搜索指定元素。

List<Integer> numbers = new ArrayList<>(Arrays.asList(1, 2, 3, 4, 5));
int index = Collections.binarySearch(numbers, 3);
System.out.println(index); // Output: 2

3. reverse(List<?> list):将List中的元素顺序反转。

List<Integer> numbers = new ArrayList<>(Arrays.asList(1, 2, 3, 4, 5));
Collections.reverse(numbers);
System.out.println(numbers); // Output: [5, 4, 3, 2, 1]

4. shuffle(List<?> list):随机打乱List中的元素顺序。

List<Integer> numbers = new ArrayList<>(Arrays.asList(1, 2, 3, 4, 5));
Collections.shuffle(numbers);
System.out.println(numbers); // Output: [2, 4, 3, 1, 5]

5. swap(List<?> list, int i, int j):交换List中指定位置的元素。

List<Integer> numbers = new ArrayList<>(Arrays.asList(1, 2, 3, 4, 5));
Collections.swap(numbers, 1, 3);
System.out.println(numbers); // Output: [1, 4, 3, 2, 5]

6. max(Collection<? extends T> coll):返回Collection中的最大元素。

List<Integer> numbers = new ArrayList<>(Arrays.asList(1, 2, 3, 4, 5));
int max = Collections.max(numbers);
System.out.println(max); // Output: 5

7. min(Collection<? extends T> coll):返回Collection中的最小元素。

List<Integer> numbers = new ArrayList<>(Arrays.asList(1, 2, 3, 4, 5));
int min = Collections.min(numbers);
System.out.println(min); // Output: 1

8. frequency(Collection<?> c, Object o):返回指定对象在集合中出现的次数。

List<Integer> numbers = new ArrayList<>(Arrays.asList(1, 2, 2, 3, 4, 2));
int frequency = Collections.frequency(numbers, 2);
System.out.println(frequency); // Output: 3

9. indexOfSubList(List<?> source, List<?> target):返回子列表在源列表中 次出现的位置。

List<Integer> source = new ArrayList<>(Arrays.asList(1, 2, 3, 4, 5, 6));
List<Integer> target = new ArrayList<>(Arrays.asList(3, 4, 5));
int index = Collections.indexOfSubList(source, target);
System.out.println(index); // Output: 2

10. replaceAll(List<T> list, T oldVal, T newVal):将List中的所有指定元素替换为新的元素。

List<Integer> numbers = new ArrayList<>(Arrays.asList(1, 2, 2, 3, 4, 2));
Collections.replaceAll(numbers, 2, 5);
System.out.println(numbers); // Output: [1, 5, 5, 3, 4, 5]

以上是Collections类中常用的函数及示例,通过使用这些函数,我们可以方便地对集合进行排序、搜索、反转、打乱、替换等操作。