集合/常見的數(shù)據(jù)結構

?????List接口:有序的集合(存儲和取出元素相同);允許存儲重復的元素;有索引,可以使用普通的for循環(huán)遍歷。Vector集合、ArrayList集合、LinkedList集合。

? ? Set接口:不允許存儲重復的元素;沒有索引(不能使用普通的for循環(huán)遍歷)。Tree集合、HashSet集合。

Collection是所有單列集合的父接口,因此在Collection中定義了單列集合(List和Set)通用的一些方法,這些方法可用于操作所有的單列集合。方法如下:

* `public boolean add(E e)`:? 把給定的對象添加到當前集合中 。

* `public void clear()` :清空集合中所有的元素。

* `public boolean remove(E e)`: 把給定的對象在當前集合中刪除。

* `public boolean contains(E e)`: 判斷當前集合中是否包含給定的對象。

* `public boolean isEmpty()`: 判斷當前集合是否為空。

* `public int size()`: 返回集合中元素的個數(shù)。

* `public Object[] toArray()`: 把集合中的元素,存儲到數(shù)組中。

????Iterator迭代器

Iterator接口的常用方法如下:

* `public E next()`:返回迭代的下一個元素。

* `public boolean hasNext()`:如果仍有元素可以迭代,則返回 true。

????泛型

??在創(chuàng)建對象的時候確定泛型。

? ? 泛型通配符?,使用迭代器遍歷集合,it.next()方法,取出的是Object。

? ? 泛型的上限限定:?extends E,代表使用的泛型只能是E類型的子類/本身;泛型的下限限定:? super E,代表使用的泛型只能是E類型的父類/本身。


常見的數(shù)據(jù)結構

? ??棧:先進后出? ? 隊列:后進先出? ?鏈表:查找元素慢,增刪快

? ??二叉樹:binary tree ,是每個結點不超過2的有序樹(tree) 。紅黑樹本身就是一顆二叉查找樹,將節(jié)點插入后,該樹仍然是一顆二叉查找樹。也就意味著,樹的鍵值仍然是有序的。

紅黑樹(查詢速度非??欤┑募s束:

1.節(jié)點可以是紅色的或者黑色的2. 根節(jié)點是黑色的

3. 葉子節(jié)點(特指空節(jié)點)是黑色的

4. 每個紅色節(jié)點的子節(jié)點都是黑色的

5. 任何一個節(jié)點到其每一個葉子節(jié)點的所有路徑上黑色節(jié)點數(shù)相同

紅黑樹的特點:速度特別快,趨近平衡樹,查找葉子元素最少和最多次數(shù)不多于二倍

????java.util.ArrayList 集合數(shù)據(jù)存儲的結構是數(shù)組結構。元素增刪慢,查找快,由于日常開發(fā)中使用最多的功能為查詢數(shù)據(jù)、遍歷數(shù)據(jù),所以 ArrayList 是最常用的集合。java.util.LinkedList 集合數(shù)據(jù)存儲的結構是鏈表結構。方便元素添加、刪除的集合。

可變參數(shù):修飾符 返回值類型 方法名(參數(shù)類型... 形參名){ }

? ??

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

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

  • 一、基礎知識:1、JVM、JRE和JDK的區(qū)別:JVM(Java Virtual Machine):java虛擬機...
    殺小賊閱讀 2,560評論 0 4
  • 一、基本數(shù)據(jù)類型 注釋 單行注釋:// 區(qū)域注釋:/* */ 文檔注釋:/** */ 數(shù)值 對于byte類型而言...
    龍貓小爺閱讀 4,442評論 0 16
  • 四、集合框架 1:String類:字符串(重點) (1)多個字符組成的一個序列,叫字符串。生活中很多數(shù)據(jù)的描述都采...
    佘大將軍閱讀 872評論 0 2
  • 一些概念 數(shù)據(jù)結構就是研究數(shù)據(jù)的邏輯結構和物理結構以及它們之間相互關系,并對這種結構定義相應的運算,而且確保經(jīng)過這...
    Winterfell_Z閱讀 6,594評論 0 13
  • 本系列出于AWeiLoveAndroid的分享,在此感謝,再結合自身經(jīng)驗查漏補缺,完善答案。以成系統(tǒng)。 Java基...
    濟公大將閱讀 1,611評論 1 6

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