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类中常用的函数及示例,通过使用这些函数,我们可以方便地对集合进行排序、搜索、反转、打乱、替换等操作。
