Collections集合工具類(lèi)以及Arrays數(shù)組工具類(lèi)

Collcetios、Arrays

  • Collections(集合工具類(lèi))

  • Arrays(數(shù)組工具類(lèi))

Collection是集合框架中的一個(gè)頂層接口,它里面定義了單列集合的共性方法。
Collections是集合框架中的一個(gè)工具類(lèi)。該類(lèi)中的方法都是靜態(tài)的,提供的方法中有可以對(duì)list集合進(jìn)行排序,二分查找等方法。
通常常用的集合都是線程不安全的。如果多線程操作這些集合時(shí),可以通過(guò)該工具類(lèi)中的同步方法,將線程不安全的集合,轉(zhuǎn)換成安全的以提高效率
    //根據(jù)元素自然順序 對(duì)指定列表按升序排序。此方法內(nèi)部調(diào)用了Comparable 的compareTo()方法。  
      public static <T extends Comparable<? super T>> void sort(List<T> list)  


    //根據(jù)元素的自然順序,返回給定 collection 的最大元素  
       public <T extends Object &   Comparalbe<? super T>> T max(Collection<? extends T> col)   

    // 使用指定元素替換指定列表中的所有元素  
      public static <T> void fill(List<? super T> list,T obj)   

    //  使用另一個(gè)值替換列表中出現(xiàn)的所有某一指定值。  
      public static T replacAll(List<T>,T oldValue,T newValue)  
    //    反轉(zhuǎn)指定列表中元素的順序  
      public static void reverse(List<?> list)    

    // 返回一個(gè)比較器,它強(qiáng)行逆轉(zhuǎn)實(shí)現(xiàn)了 Comparable 接口的對(duì)象 collection 的自然順序  
      public static T Comparator<T> reverseOrder()  

    //返回一個(gè)比較器,它強(qiáng)行逆轉(zhuǎn)指定比較器的順序  
      public static T Comparator<T> reverseOrder(Comparator<T> cmp)  

     public static <T> List<T> synchronizedList(List<T> list)  
     public static void swap(List<T> list,int i,int j  

    //如果搜索鍵包含在列表中,則返回搜索鍵的索引;否則返回 (-(插入點(diǎn)) - 1)  

     public static <T> int binarySearch(List<? extends t> list,T key,Comparator<? extends T> c)   
  • Arrays(數(shù)組工具類(lèi))(看Api文檔)

案例

    /**
     * Collections
     * <p>
     * Arrays
     */
    public class Demo {
        public static void main(String[] args) {
            List<String> list = new ArrayList<>();
            list.add("abc");
            list.add("aaa");
            list.add("adc");
            list.add("bcd");
            list.add("abb");
            System.out.println("\n排序前:");
            sop(list);

            //排序
            Collections.sort(list);
            System.out.println("\n排序后:");
            sop(list);
            Collections.reverse(list); //反轉(zhuǎn)
            System.out.println("\n反轉(zhuǎn):");
            sop(list);


            //獲取最大的值
            String maxStr = Collections.max(list);
            System.out.println("\n最大值:\r\n---->" + maxStr);

            String ss = "22 90 34 50 65";
            String[] nums = ss.split(" ");
            List<String> ln = new ArrayList<>();
            for (String n : nums) ln.add(n);
            /////////////////////////////////////////////////////
            //將數(shù)組轉(zhuǎn)成集合
            List<String> lns = Arrays.asList(nums);

            String maxN = Collections.max(lns);
            System.out.println("\r\n---->" + maxN);

            //將集合轉(zhuǎn)成數(shù)組: 可以固定集合大小,不允許再出現(xiàn)刪除和增加操作
            String[] str = lns.toArray(new String[lns.size()]);
            System.out.println(str);
        }

        static void sop(List<String> list) {
            for (String s : list)
                System.out.print(s + " ");
        }
    }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法,類(lèi)相關(guān)的語(yǔ)法,內(nèi)部類(lèi)的語(yǔ)法,繼承相關(guān)的語(yǔ)法,異常的語(yǔ)法,線程的語(yǔ)...
    子非魚(yú)_t_閱讀 34,649評(píng)論 18 399
  • Java SE 基礎(chǔ): 封裝、繼承、多態(tài) 封裝: 概念:就是把對(duì)象的屬性和操作(或服務(wù))結(jié)合為一個(gè)獨(dú)立的整體,并盡...
    Jayden_Cao閱讀 2,234評(píng)論 0 8
  • 從三月份找實(shí)習(xí)到現(xiàn)在,面了一些公司,掛了不少,但最終還是拿到小米、百度、阿里、京東、新浪、CVTE、樂(lè)視家的研發(fā)崗...
    時(shí)芥藍(lán)閱讀 42,790評(píng)論 11 349
  • 前幾天我的朋友圈被維安的一篇推送刷屏了,她在推送里面介紹了自己首部個(gè)人隨筆集《我們的年輕,柔軟而硬氣》的誕生記,很...
    眼鏡姑娘呀閱讀 7,509評(píng)論 29 74
  • 西瓜是我隔壁的隔壁家陳叔的兒子,是我從小玩到大的好朋友,從穿開(kāi)襠褲撒尿時(shí)互相對(duì)著”對(duì)方開(kāi)炮“開(kāi)始,到每個(gè)周末去游戲...
    蛋炒飯要加肉閱讀 296評(píng)論 0 0

友情鏈接更多精彩內(nèi)容