参考 http://how2j.cn/k/collection/collection-collections/369.html
Collections 是一个类, 容器的工具类, 就如同 Arrays 是数组的工具类
反转
reverse 使 List 中的数据发生翻转
- package collection;
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.List;
- public class TestCollection {public static void main(String[] args) {
- // 初始化集合 numbers
- List<Integer> numbers = new ArrayList<>();
- for (int i = 0; i <10; i++) {
- numbers.add(i);
- }
- System.out.println("集合中的数据:");
- System.out.println(numbers);
- Collections.reverse(numbers);
- System.out.println("翻转后集合中的数据:");
- System.out.println(numbers);
- }
- }
混淆
shuffle 混淆 List 中数据的顺序
- package collection;
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.List;
- public class TestCollection {
- public static void main(String[] args) {
- // 初始化集合 numbers
- List<Integer> numbers = new ArrayList<>();
- for (int i = 0; i <10; i++) {
- numbers.add(i);
- }
- System.out.println("集合中的数据:");
- System.out.println(numbers);
- Collections.shuffle(numbers);
- System.out.println("混淆后集合中的数据:");
- System.out.println(numbers);
- }
- }
排序
sort 对 List 中的数据进行排序
- package collection;
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.List;
- public class TestCollection {
- public static void main(String[] args) {
- // 初始化集合 numbers
- List<Integer> numbers = new ArrayList<>();
- for (int i = 0; i <10; i++) {
- numbers.add(i);
- }
- System.out.println("集合中的数据:");
- System.out.println(numbers);
- Collections.shuffle(numbers);
- System.out.println("混淆后集合中的数据:");
- System.out.println(numbers);
- Collections.sort(numbers);
- System.out.println("排序后集合中的数据:");
- System.out.println(numbers);
- }
- }
交换
swap 交换两个数据的位置
- package collection;
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.List;
- public class TestCollection {
- public static void main(String[] args) {
- // 初始化集合 numbers
- List<Integer> numbers = new ArrayList<>();
- for (int i = 0; i <10; i++) {
- numbers.add(i);
- }
- System.out.println("集合中的数据:");
- System.out.println(numbers);
- Collections.swap(numbers,0,5);
- System.out.println("交换 0 和 5 下标的数据后, 集合中的数据:");
- System.out.println(numbers);
- }
- }
滚动
rotate 把 List 中的数据, 向右滚动指定单位的长度
- package collection;
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.List;
- public class TestCollection {
- public static void main(String[] args) {
- // 初始化集合 numbers
- List<Integer> numbers = new ArrayList<>();
- for (int i = 0; i <10; i++) {
- numbers.add(i);
- }
- System.out.println("集合中的数据:");
- System.out.println(numbers);
- Collections.rotate(numbers,2);
- System.out.println("把集合向右滚动 2 个单位, 标的数据后, 集合中的数据:");
- System.out.println(numbers);
- }
- }
线程安全化
synchronizedList 把非线程安全的 List 转换为线程安全的 List.
- package collection;
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.List;
- public class TestCollection {
- public static void main(String[] args) {
- List<Integer> numbers = new ArrayList<>();
- System.out.println("把非线程安全的 List 转换为线程安全的 List");
- List<Integer> synchronizedNumbers = (List<Integer>) Collections.synchronizedList(numbers);
- }
- }
来源: https://www.cnblogs.com/lijingran/p/9081649.html