1. 程式人生 > >深入java集合學習1-集合框架淺析

深入java集合學習1-集合框架淺析

 前言

              集合是一種資料結構,在程式設計中是非常重要的。好的程式就是好的資料結構+好的演算法。java中為我們實現了曾經在大學學過的資料結構與演算法中提到的一些資料結構。如順序表,連結串列,棧和堆等。Java 集合框架API是用來表示和操作集合的統一框架,它包含介面,實現類以及一些程式設計輔助演算法。具體位於java.util包下。

java集合框架UML圖


從上面的UML圖中可以看出,集合框架可以簡單的分為四部分

Collection介面以及實現類


Map介面及其實現類    



 Iterator介面及實現類

 輔助工具類

           Collections、Arrays類
                       Collections、Arrays是集合類的一個工具類/幫助類,其中提供了一系列靜態方法,用於對集合中 元素進行排序、查詢等各種操作。
           Comparable、Comparator介面

                      一般是用於物件的比較來實現排序,兩者略有區別 

                     Comparable用作預設的比較方式,實現了該介面的類之間可以相互進行比較,這個物件組成的集合就可以直接通過sort()進行排序了。
                     Comparator是設計模式中策略模式的一種應用。將演算法的實現和資料進行了分離。


                     一般用在如下情況下:
                   1、類設計者沒有考慮到比較問題而沒有實現Comparable介面。這是我們就可以通過使用Comparator,這種情況下,我們是不需要改變物件的。
                    2、一個集合中,我們可能需要有多重的排序標準,這時候如果使用Comparable就難實現了可以實現Comparator提供多種標準的比較器進行排序。