Java集合框架05:Collections工具类

和数组的Arrays工具类一样,集合也有自己的Collections工具类

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;

public class Hello{
    public static void main(String[] args) {
        List<Integer> list = new ArrayList();
        list.add(4);
        list.add(1);
        list.add(5);

        //Collections.sort()方法升序排序
        Collections.sort(list);
        System.out.println(list);

        //Collections.binarySearch()方法二分查找
        System.out.println(Collections.binarySearch(list, 4));

        //Collections.reverse()方法反转集合
        Collections.reverse(list);
        System.out.println(list);

        //toArray(T[] a)方法将集合转为相应类型的数组,长度任意(toArray()等同于Arrays.copyOf(),返回的是Object类型的数组,数组的类型是无法强制转换的,只能遍历元素转换)
        Integer[] arr = list.toArray(new Integer[0]);
        System.out.println(Arrays.toString(arr));

        //Arrays.asList()方法将数组转换为集合(只能是引用数据类型),但是这个集合不能增删
        List li = Arrays.asList(arr);
        System.out.println(li);
    }
}

拓展:基本数据类型的数组转换成集合

import java.util.Arrays;
import java.util.List;

public class Hello{
    public static void main(String[] args) {
        //基本数据类型的数组转换成集合,会将整个数组当作一个对象转换;因为集合中存储的都是对象的引用,基本数据类型只能被当做一个对象的引用
        int[] num = {1, 2, 3};
        List<int[]> ints = Arrays.asList(num);
        System.out.println(ints);

        //将数组转换成集合,数组必须是引用数据类型,基本类型需要使用其包装类型
        Integer[] num1 = {1, 2, 3};
        List<Integer> integers = Arrays.asList(num1);
        System.out.println(integers);
    }
}
posted @ 2021-09-11 21:46  振袖秋枫问红叶  阅读(39)  评论(0)    收藏  举报