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<Integer> list = new ArrayList<>();
HashSet<Integer> set = new HashSet<>();
LinkedList<Integer> 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<Integer> arrayList = new ArrayList<>();
LinkedList<Integer> linkedList = new LinkedList<>();
List<Integer> 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<Integer> arrayList = new ArrayList<>();
LinkedList<Integer> linkedList = new LinkedList<>();
List<Integer> 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<Integer> 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<Integer> 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<Integer> 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<Integer> 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<Integer> 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]