Java基礎鞏固第三天(泛型、ArrayList、LinkList、HashSet)
泛型的萬用字元:?
表示任意的資料型別;使用方式:不能在建立物件時使用;在方法中的引數裡使用。
泛型的上限限定:? extend E:只能是E型別的子類與本身使用。
泛型的下限限定:?super E:只能是E型別的父類與本身使用。
arraylist不是同步的。是多執行緒。
contains(Object o) 如果此列表包含指定的元素,則返回 true 。
get(int index) 返回此列表中指定位置的元素。
indexOf(Object o) 返回此列表中指定元素的第一次出現的索引,如果此列表不包含元素,則返回-1。
isEmpty() 如果此列表不包含元素,則返回 true 。
linklist的增加元素的方法有:addfist(element)把元素新增到集合中的第一個元素。等同於push。addlast(element)把元素新增到集合中的最後一個元素。等同於add();
remove() 檢索並刪除此列表的頭(第一個元素)。
remove(int index) 刪除該列表中指定位置的元素。
remove(Object o) 從列表中刪除指定元素的第一個出現(如果存在)。
removeFirst() 從此列表中刪除並返回第一個元素。
removeLast() 從此列表中刪除並返回最後一個元素。
removeLastOccurrence(Object o) 刪除此列表中指定元素的最後一次出現(從頭到尾遍歷列表時)。
set(int index, E element) 用指定的元素替換此列表中指定位置的元素。
size() 返回此列表中的元素數。
toArray() 以正確的順序(從第一個到最後一個元素)返回一個包含此列表中所有元素的陣列
offerFirst(E e) 在此列表的前面插入指定的元素。
offerLast(E e) 在該列表的末尾插入指定的元素。
HashSet:繼承set介面
特性:無重複元素、無序(存取順序不一致)。只能用迭代器與增強for迴圈迭代查詢元素(因為沒有索引,也沒有帶索引的方法)。底層結構是一個雜湊(HashSet是雜湊表的例項)。
雜湊值:是系統隨機分配的十進位制值(物件的地址值,一個邏輯地址,並非實體地址。是模擬出的資料)。String型別的數值如果一樣,則hashCode一樣。物件才有hashCode,因為Object類裡的方法hashCode();
HashSet:陣列+連結串列+紅黑樹(為了提高查詢的速度)。
當新增元素時,計算雜湊值,查詢集合內是否有相同的雜湊值。如果沒有,插入雜湊值(陣列儲存)和字面值(連結串列儲存);如果有,看字面值是否相等,相等則覆蓋,不相等就插入此雜湊值所屬的結果集。
相關文章
- 《怎麼鞏固JAVA基礎語法基礎(上)》Java
- PHP 函式基礎鞏固PHP函式
- java 基礎 泛型Java泛型
- Java基礎-泛型Java泛型
- Java基礎 —— 泛型Java泛型
- 基礎鞏固 --多執行緒執行緒
- 【Java反射】Java 泛型基礎Java反射泛型
- ArrayList跟linkList
- 鞏固好基礎,才能學好LinuxLinux
- Java基礎-泛型詳解Java泛型
- Java基礎之泛型方法Java泛型
- java基礎複習-----泛型Java泛型
- java基礎鞏固-淺析String原始碼及其不可變性Java原始碼
- JAVA API:ArrayList(泛型類)基本使用JavaAPI泛型
- Java基礎——深入理解泛型Java泛型
- Java基礎之淺談泛型Java泛型
- [Java基礎]ArrayListJava
- 基礎鞏固、探尋Java裝箱和拆箱的奧妙!Java
- Java基礎知識強化(用於自我鞏固)以及審查Java
- 鞏固系統韌性三個基礎策略
- Go 基礎鞏固加強-1.0-指標Go指標
- 長篇總結之JavaScript,鞏固前端基礎JavaScript前端
- java入門基礎學習----泛型Java泛型
- Java 基礎 一文搞懂泛型Java泛型
- JAVA基礎之九-泛型(通用型別)Java泛型型別
- Java-基礎-ArrayListJava
- 學Python要避免哪些坑,如何鞏固好基礎Python
- 鞏固Python基礎必學的22個語法Python
- TypeScript基礎--泛型TypeScript泛型
- Java基礎知識掃盲(四)——泛型Java泛型
- Go泛型基礎使用Go泛型
- [鞏固基礎]總結Python基礎知識的14張思維導圖Python
- java基礎:HashSet/LinkedHashSet/TreeSet — 原始碼分析Java原始碼
- Day22 集合,ArrayList,泛型泛型
- java基礎:ArrayList — 原始碼分析Java原始碼
- Java基礎系列:瞭解ArrayListJava
- 基礎篇:深入解析JAVA泛型和Type型別體系Java泛型型別
- 【java】【泛型】泛型geneticJava泛型