06.Collections工具类

作者: 今天庹 | 来源:发表于2018-10-15 13:50 被阅读0次

    Collections中的方法

    package com.itheima_03;
    
    import java.sql.Connection;
    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.List;
    
    /*
     * Collections:
     * 面试题:Collection和Collections有什么区别?
     *       Collection是集合体系中的最顶层,包含了集合体系的共性
     *       Collections是一个工具类,方法就是用于操作Collection的
     */
    public class CollectionDemo {
        public static void main(String[] args) {
            
            method();
            
    //      method2();
            
    //      method3();
            
    //      method4();
            
    //      method5();
            
    //      method6();
            
    //      method7();
            
        }
    
        private static void method7() {
            //static void swap(List list, int i, int j) :将指定列表中的两个索引进行位置互换
            List<Integer> list = new ArrayList<Integer>();
            list.add(1);
            list.add(4);
            
            Collections.swap(list, 0, 1);
            System.out.println(list);//[4, 1]
        }
    
        private static void method6() {
            //static void sort(List<T> list)  :按照列表中元素的自然顺序进行排序
            List<Integer> list = new ArrayList<Integer>();
            list.add(1);
            list.add(4);
            list.add(3);
            list.add(2);
            
            Collections.sort(list);
            System.out.println(list);//[1, 2, 3, 4]
        }
    
        private static void method5() {
            //static void shuffle(List<?> list) :随即置换
            List<Integer> list = new ArrayList<Integer>();
            list.add(1);
            list.add(2);
            list.add(3);
            list.add(4);
            
            Collections.shuffle(list);
            System.out.println(list);//[4, 2, 3, 1]
        }
    
        private static void method4() {
            //static void reverse(List list)  :反转
            List<Integer> list = new ArrayList<Integer>();
            list.add(1);
            list.add(2);
            list.add(3);
            
            Collections.reverse(list);
            System.out.println(list);//[3, 2, 1]
        }
    
        private static void method3() {
            //static <T> void fill(List list, T obj) :使用指定的对象填充指定列表的所有元素
            List<String> list = new ArrayList<String>();
            list.add("hello");
            list.add("world");
            list.add("java");
            System.out.println(list);//[hello, world, java]
            
            Collections.fill(list, "android");
            
            System.out.println(list);// [android, android, android]
        }
    
        private static void method2() {
            //static <T> void copy(List dest, List src) :是把源列表中的数据覆盖到目标列表
            //注意:目标列表的长度至少等于源列表的长度
            //创建源列表
            List<String> src = new ArrayList<String>();
            src.add("hello");
            src.add("world");
            src.add("java");
            
            //创建目标列表
            List<String> dest = new ArrayList<String>();
            dest.add("java");
            dest.add("java");
            dest.add("java");
            dest.add("java");
            Collections.copy(dest, src);
            System.out.println(dest);//[hello, world, java, java]
        }
    
        private static void method() {
            //static <T> int binarySearch(List list, Object key) :使用二分查找法查找指定元素的索引位置
            List<Integer> list = new ArrayList<Integer>();
            list.add(1);
            list.add(2);
            list.add(3);
            list.add(4);
            
            int index = Collections.binarySearch(list, 4);
            System.out.println(index);//3
        }
    }
    

    相关文章

      网友评论

        本文标题:06.Collections工具类

        本文链接:https://www.haomeiwen.com/subject/dhftzftx.html