Collections类
1.概述
Collections被称为 “集合操作的工具类” 。此类完全由在Collection上进行操作或返回Collection的静态方法组成。它包含在Collection上操作的多态算法,即“包装器”,包装器返回由指定Collection支持的新Collection,以及少数其他内容。
2.常用方法摘要
修饰语和类型 | 方法 | 描述 |
---|---|---|
static boolean | addAll(Collection<? super T> c, T… elements) | 将所有指定的元素添加到指定的集合 |
static int | binarySearch(List<? extends Comparable<? super T>> list, T key) | 使用二叉搜索算法搜索指定对象的指定列表 |
static void | copy(List<? super T> dest, List<? extends T> src) | 将所有元素从一个列表复制到另一个列表中 |
static <T extends Comparable<? super T>> | sort(List list) | 根据其元素的自然顺序对指定的列表进行排序 |
static void | fill(List<? super T> list, T obj) | 用指定的元素代替指定列表的所有元素 |
static int | frequency(Collection<?> c, Object o) | 返回指定集合中与指定对象相等的元素数 |
static int | indexOfSubList(List<?> source, List<?> target) | 返回指定源列表中指定目标列表的第一次出现的起始位置,如果没有此类事件,则返回-1 |
static int | lastIndexOfSubList(List<?> source, List<?> target) | 返回指定源列表中指定目标列表的最后一次出现的起始位置,如果没有此类事件则返回-1 |
static ArrayList | list(Enumeration e) | 返回一个数组列表,其中包含由枚举返回的顺序由指定的枚举返回的元素 |
static boolean | replaceAll(List list, T oldVal, T newVal) | 将列表中一个指定值的所有出现替换为另一个 |
static void | reverse(List<?> list) | 反转指定列表中元素的顺序 |
这里是部分常用方法,更多方法和详细介绍请查阅官方JDK帮助文档。
3.使用
总体来说比较简单,容易理解。下面通过示例代码说明此集合工具类的用法:
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
/*
* 集合操作的工具类
* Collections
*/
public class CollectionsDemo {
public static void main(String[] args) {
function();
function_1();
function_2();
}
/*
* Collections.shuffle方法
* 对List集合中的元素,进行随机排列
*/
public static void function_2(){
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(5);
list.add(9);
list.add(11);
list.add(8);
list.add(10);
list.add(15);
list.add(20);
System.out.println(list);
//调用工具类方法shuffle对集合随机排列
Collections.shuffle(list);
System.out.println(list);
}
/*
* Collections.binarySearch静态方法
* 对List集合进行二分搜索,方法参数,传递List集合,传递被查找的元素
*/
public static void function_1(){
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(5);
list.add(8);
list.add(10);
list.add(15);
list.add(20);
//调用工具类静态方法binarySearch
int index = Collections.binarySearch(list, 16);
System.out.println(index);
}
/*
* Collections.sort静态方法
* 对于List集合,进行升序排列
*/
public static void function(){
//创建List集合
List<String> list = new ArrayList<String>();
list.add("ewrew");
list.add("qwesd");
list.add("Qwesd");
list.add("bv");
list.add("wer");
System.out.println(list);
//调用集合工具类的方法sort
Collections.sort(list);
System.out.println(list);
}
}
返回Java中集合类知识目录