• Java Collections工具类


    简介

    Collections是java.util包下的集合工具类,定义了除了存取以外的集合常用方法。

    常用方法

    public static <T extends Comparable<? super T>> void sort(List<T> list) //升序排列(元素类型必须实现Comparable接口)
    public static <T> int binarySearch(List<? extends Comparable<? super T>> list, T key)//排序后二分查找
    public static <T> void copy(List<? super T> dest, List<? extends T> src)//集合拷贝
    public static void reverse(List<?> list) //反转集合中元素的顺序
    public static void shuffle(List<?> list) //随机重置集合元素的顺序
    public static <T extends Object & Comparable<? super T>> T max(Collection<? extends T> coll)//最大
    public static <T extends Object & Comparable<? super T>> T min(Collection<? extends T> coll)//最小
    public static <T> void fill(List<? super T> list, T obj)//使用指定元素替换集合中的所有元素
    

    操作范例

    /**
     * Collections工具类的使用
     */
    public class collectionsTest {
        public static void main(String[] args) {
    
            List<Integer> list = new ArrayList<>();
            list.add(23);
            list.add(4);
            list.add(45);
            list.add(76);
            list.add(12);
            System.out.println("原始集合:"+list);
    
            //排序
            Collections.sort(list); //升序
            System.out.println("排序后:"+list);
    
            //排序后可以二分查找
            int index = Collections.binarySearch(list, 45);//查找位置,没有找到结果为负
            System.out.println(index);
    
            //拷贝
            //需要拷贝到的目的集合要先有数据,才能拷贝
            List<Integer> dest = new ArrayList<>();
            for (int i = 0; i < list.size(); i++) {
                dest.add(0);
            }
            Collections.copy(dest,list);
            System.out.println("拷贝后的集合:"+dest);
    
            //反转
            Collections.reverse(list);
            System.out.println("反转后:"+ list);
    
            //打乱
            Collections.shuffle(list);
            System.out.println("打乱后:"+ list);
            Collections.shuffle(list);
            System.out.println("打乱后:"+ list);
    
            //最大,最小
            Integer max = Collections.max(list);
            System.out.println("最大:"+max);
            Integer min = Collections.min(list);
            System.out.println("最小:"+min);
    
            //使用指定元素替换集合中的所有元素
            Collections.fill(list,0);
            System.out.println("元素填充后:"+list);
    
    
        }
    }
    
    

    运行结果

    原始集合:[23, 4, 45, 76, 12]
    排序后:[4, 12, 23, 45, 76]
    3
    拷贝后的集合:[4, 12, 23, 45, 76]
    反转后:[76, 45, 23, 12, 4]
    打乱后:[23, 4, 45, 76, 12]
    打乱后:[23, 45, 76, 4, 12]
    最大:76
    最小:4
    元素填充后:[0, 0, 0, 0, 0]
    
    --------------- 我每一次回头,都感觉自己不够努力,所以我不再回头。 ---------------
  • 相关阅读:
    Spring5.2.x02日志体系
    【cdh6.3.2】阿里云盘
    日本产业大溃败:拥有无数世界第一,却被全世界抛弃
    Silverlight+WCF部署到IIS
    Silverlight部署常见问题
    html中调用js脚本是加入defer="defer" 作用
    ie6 ie7 ie8 ie9 ff css 区别
    jupyter notebook 安装nbextensions后不显示
    用flash导出动画时提示 “java运行时环境初始化时出现错误,您可能需要重新安装flash"
    Stylish 样式
  • 原文地址:https://www.cnblogs.com/zjw-blog/p/13803082.html
Copyright © 2020-2023  润新知