java.util.Collections类的方法
addAll()方法
Modifier and Type
方法
描述
static boolean
addAll(Collection c, T... elements)
将所有指定的元素添加到指定的集合。
import java.util.*;
public class TestAddAll {
public static void main(String[] args) {
test();
}
// 测试addAll()方法
public static void test() {
ArrayList list = new ArrayList<>();
HashSet set = new HashSet<>();
LinkedList linkedList = new LinkedList<>();
Collections.addAll(list,1,2,5,10);
Collections.addAll(set,1,3,10,9,3);
Collections.addAll(linkedList, 1,2,3,10,9);
System.out.println("Array列表中的元素:"+list);
System.out.println("set集合中的元素"+set);
System.out.println("linked列表中的元素:"+linkedList);
}
}
Array列表中的元素:[1, 2, 5, 10]
set集合中的元素[1, 3, 9, 10]
linked列表中的元素:[1, 2, 3, 10, 9]
copy()方法
Modifier and Type
方法
描述
static void
copy(List dest, List src)
将所有元素从一个列表复制到另一个列表中。
import java.util.*;
public class TestCopy {
public static void main(String[] args) {
test();
}
// 测试 copy()方法
public static void test() {
ArrayList arrayList = new ArrayList<>();
LinkedList linkedList = new LinkedList<>();
List asList = Arrays.asList(1, 3, 10, 20);
Collections.addAll(arrayList,1,2,5,10);
Collections.addAll(linkedList, 1,2,3,10);
Collections.copy(arrayList,linkedList);
Collections.copy(linkedList, asList);
linkedList.add(33);
System.out.println("将LinkedList复制到ArrayList:"+arrayList);
System.out.println("将固定长度List复制到LinkedList变成了不固定长List:"+linkedList);
}
}
将LinkedList复制到ArrayList:[1, 2, 3, 10]
将固定长度List复制到LinkedList变成了不固定长List:[1, 3, 10, 20, 33]
fill()方法
Modifier and Type
方法
描述
static void
fill(List list, T obj)
用指定的元素替换指定列表的所有元素。
import java.util.*;
public class TestFill {
public static void main(String[] args) {
test();
}
// 测试 fill()方法
public static void test() {
ArrayList arrayList = new ArrayList<>();
LinkedList linkedList = new LinkedList<>();
List asList = Arrays.asList(1, 3, 10, 20);
Collections.addAll(arrayList,1,2,5,10);
Collections.addAll(linkedList, 1,2,3,10);
Collections.fill(asList, 0);
Collections.fill(arrayList,0);
Collections.fill(linkedList,0);
System.out.println("固定长度List替换"+asList);
System.out.println("ArrayList替换"+arrayList);
System.out.println("LinkedList替换"+linkedList);
}
}
固定长度List替换[0, 0, 0, 0]
ArrayList替换[0, 0, 0, 0]
LinkedList替换[0, 0, 0, 0]
replaceAll()
Modifier and Type
方法
描述
static boolean
replaceAll(List list, T oldVal, T newVal)
将列表中一个指定值的所有出现替换为另一个。
import java.util.*;
public class TestR {
public static void main(String[] args) {
test();
}
// 测试 replaceAll()
public static void test() {
LinkedList linkedList = new LinkedList<>();
Collections.addAll(linkedList, 1,2,3,10,3,2,3);
Collections.replaceAll(linkedList,3,333);
System.out.println("将列表中3替换为333:"+linkedList);
}
}
将列表中3替换为333:[1, 2, 333, 10, 333, 2, 333]
reverse()
Modifier and Type
方法
描述
static void
reverse(List list)
反转指定列表中元素的顺序。
import java.util.*;
public class TestR {
public static void main(String[] args) {
test();
}
// 测试 reverse()
public static void test() {
LinkedList linkedList = new LinkedList<>();
Collections.addAll(linkedList, 1,2,3,10,3,2,3);
Collections.reverse(linkedList);
System.out.println("反转列表:"+linkedList);
}
}
反转列表:[3, 2, 3, 10, 3, 2, 1]
swap()
Modifier and Type
方法
描述
static void
swap(List list, int i, int j)
交换指定列表中指定位置的元素。
import java.util.Collections;
import java.util.LinkedList;
public class TestS {
public static void main(String[] args) {
test();
}
// 测试 swap()
public static void test() {
LinkedList linkedList = new LinkedList<>();
Collections.addAll(linkedList, 1,2,3,10,3,2,3);
Collections.swap(linkedList,0,3);
System.out.println("交换0,3位置元素:"+linkedList);
}
}
交换0,3位置元素:[10, 2, 3, 1, 3, 2, 3]
sort()
Modifier and Type
方法
描述
static >void
sort(List list)
根据其元素的natural ordering按照升序排列指定的列表。
static void
sort(List list, Comparator c)
根据指定的比较器引起的顺序对指定的列表进行排序。
import java.util.Collections;
import java.util.LinkedList;
public class TestS {
public static void main(String[] args) {
test();
}
// 测试 sort()
public static void test() {
LinkedList linkedList = new LinkedList<>();
Collections.addAll(linkedList, 1,2,3,10,3,2,3);
Collections.sort(linkedList);
System.out.println("排序:"+linkedList);
}
}
排序:[1, 2, 2, 3, 3, 3, 10]
shuffle()
Modifier and Type
方法
描述
static void
shuffle(List list)
使用默认的随机源随机排列指定的列表。
| static void | shuffle(List list, Random rnd) | 使用指定的随机源随机排列指定的列表。 |
import java.util.Collections;
import java.util.LinkedList;
public class TestS {
public static void main(String[] args) {
test();
}
// 测试 shuffle()
public static void test() {
LinkedList linkedList = new LinkedList<>();
Collections.addAll(linkedList, 1,2,3,10,3,2,3);
Collections.shuffle(linkedList);
System.out.println("打乱列表:"+linkedList);
}
}
打乱列表:[3, 2, 2, 3, 3, 1, 10]