本文目錄一覽:
- 1、java中,集合類有什麼作用
- 2、Java中「集合」是啥意思?集合類的「集合」
- 3、java有哪些集合
- 4、java集合是什麼?
- 5、在Java中,什麼是集合類,跟普通類有什麼區別?
- 6、JAVA的集合類型有哪些
java中,集合類有什麼作用
集合類是將多個元素組成一個單元的對象。集合類的作用是用於儲存、檢索和操縱數據,以及將數據從一個方法傳輸至另一個方法
Java中「集合」是啥意思?集合類的「集合」
在java語言提供的工具類里,一般集合指的是實現了Collection接口的類。
主要是Set、List、Queue
Collection接口方法如下
實現Collection接口的HashSet
實現Collection接口的ArrayList
實現Collection接口的PriorityQueue
另外還有就是實現Map接口的映射集合,HashMap、TreeMap……
Map接口的TreeMap
當然 還有很多很多,就不一一舉例了。
另外如果你願意完全可以定義自己的集合,說白了不就是按照自己的邏輯把對象放在一起么~~~一般實現存、取、排序 就OK了。
java有哪些集合
Java集合主要有四種,分別為:List列表、Queue隊列、Set集合、Map映射。
List列表:有序的,可重複的;
Queue隊列:有序,可重複的;
Set集合:不可重複;
Map映射:無序,鍵唯一,值不唯一。
java集合是什麼?
Java集合是什麼:
Java 中的集合類庫可以幫助我們在程序設計中實現傳統的數據結構。
Java的集合類是一個用來存放對象的容器,有以下特點:
1、Java集合只能存放對象。加入添加了一個基本數據類型,會被自動裝箱後存入集合。
2、集合存放的是多個對象的引用,對象本身是在堆內存中的。
3、集合可以存放不同類型,不限數量的數據類型。
集合分三種:1、Set 2 、List 3、Map,下面進行具體介紹。
擴展鏈接:
主要內容:
1)手寫ArrayList
2)手寫單鏈表
3)手寫LinkedList
4)手寫HashMap
5)手寫HashSet
6)最新並發集合類
學習目標:
1. 掌握手寫ArrayList
2. 掌握手寫單鏈表
3. 掌握手寫LinkedList
4. 掌握手寫HashMap
5. 掌握手寫HashSet
6. 理解最新並發集合類底層原理
視頻課程小結:
01_集合提升訓練_手寫ArrayList_get_size_isEmpty_自定義異常
02_集合提升訓練_手寫ArrayList_構造方法_add
03_集合提升訓練_手寫ArrayList_toString_iterator
04_集合提升循環_手寫單鏈表_get
05_集合提升訓練_手寫單鏈表_add_remove_toString
06_集合提升訓練_手寫LinkedList
07_集合提升訓練_手寫LinkedList_添加內存分配圖
08_集合提升訓練_HashMap的原理和代碼準備
09_集合提升訓練_手寫HashMap的put
10_集合提升訓練_手寫HashMap的get_toString
11_集合提升訓練_手寫HashSet
12_集合提升訓練_新一代並發集合類
在Java中,什麼是集合類,跟普通類有什麼區別?
簡單的說,集合類有list列,set集和map映射 三大類!
Set(集):集合中的對象無排列順序,並且沒有重複的對象.
List(隊列):集合中的對象按照索引的順序排列,可以有重複的對象。
Map(映射):集合中的每一個元素都是一對一對的,包括一個key對象,一個Value對象(一個Key指向一個Value).集合中沒有重複的key對象,但是vaulue對象可以重複.
集合類是進行集合操作的。
JAVA的集合類型有哪些
Java API中所用的集合類,都是實現了Collection接口,他的一個類繼承結構如下:
Collection–List–Vector
Collection–List–ArrayList
Collection–List–LinkedList
Collection–Set–HashSet
Collection–Set–HashSet–LinkedHashSet
Collection–Set–SortedSet–TreeSet
Vector : 基於Array的List,其實就是封裝了Array所不具備的一些功能方便我們使用,它不可能走入Array的限制。性能也就不可能
超越Array。所以,在可能的情況下,我們要多運用Array。另外很重要的一點就是Vector「sychronized」的,這個也是Vector和
ArrayList的唯一的區別。
ArrayList:同Vector一樣是一個基於Array上的鏈表,但是不同的是ArrayList不是同步的。所以在性能上要比Vector優越一些,但
是當運行到多線程環境中時,可需要自己在管理線程的同步問題。
LinkedList:LinkedList不同於前面兩種List,它不是基於Array的,所以不受Array性能的限制。它每一個節點(Node)都包含兩方
面的內容:1.節點本身的數據(data);2.下一個節點的信息(nextNode)。所以當對LinkedList做添加,刪除動作的時候就不用像
基於Array的List一樣,必須進行大量的數據移動。只要更改nextNode的相關信息就可以實現了。這就是LinkedList的優勢。
List總結:
1. 所有的List中只能容納單個不同類型的對象組成的表,而不是Key-Value鍵值對。例如:[ tom,1,c ];
2. 所有的List中可以有相同的元素,例如Vector中可以有 [ tom,koo,too,koo ];
3. 所有的List中可以有null元素,例如[ tom,null,1 ];
4. 基於Array的List(Vector,ArrayList)適合查詢,而LinkedList(鏈表)適合添加,刪除操作。
HashSet:雖然Set同List都實現了Collection接口,但是他們的實現方式卻大不一樣。List基本上都是以Array為基礎。但是Set則是
在HashMap的基礎上來實現的,這個就是Set和List的根本區別。HashSet的存儲方式是把HashMap中的Key作為Set的對應存儲項。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/289467.html