java集合介面
1. 簡述java集合介面List、Set、Map的異同.
list允許元素重復,有序,set不允許重復元素,無序,map的鍵不允許重復。
2. Java集合框架中介面Collection和Map的區別
Collection
├List
│├LinkedList
│├ArrayList
│└Vector
│└Stack
└Set
Map
├Hashtable
├HashMap
└WeakHashMap
1、Collection介面
Collection是最基本的集合介面,一個Collection代表一組Object,即Collection的元素(Elements)。一些Collection允許相同的元素而另一些不行。一些能排序而另一些不行。Java SDK不提供直接繼承自Collection的類,Java SDK提供的類都是繼承自Collection的「子介面」如List和Set。
所有實現Collection介面的類都必須提供兩個標準的構造函數:無參數的構造函數用於創建一個空的Collection,有一個Collection參數的構造函數用於創建一個新的Collection,這個新的Collection與傳入的Collection有相同的元素。後一個構造函數允許用戶復制一個Collection。
2、Map介面
Map沒有繼承Collection介面,Map提供key到value的映射。一個Map中不能包含相同的key,每個key只能映射一個value。Map的內容可以被當作一組key集合,一組value集合,或者一組key-value映射。
3. Java集合類框架的基本介面有哪些有什麼特點
Java集合類裡面最基本的介面有:
Collection:代表一組對象,每一個對象都是它的子元素。
Set:不包含重復元素,。
List:有順序的集合,並且可以包含重復元素,其中含有arraylist和linkedlist。
Map:可以把鍵(key)映射到值(value)的對象,鍵不能重復。
4. java的集合框架中的兩大介面是什麼
Java集合類提供了一套設計良好的支持對一組對象進行操作的介面和類。Java集合類裡面最基本的介面有:
1、Collection:代表一組對象,每一個對象都是它的子元素。
2、Set:不包含重復元素的Collection。
3、List:有順序的collection,並且可以包含重復元素。
4、Map:可以把鍵(key)映射到值(value)的對象,鍵不能重復
5. java中常用的集合介面有哪些
集合主要有Collection和Map介面。
List特點:元素有放入順序,元素可重復
Map特點:元素按鍵值對存儲,無放入順序
Set特點:元素無放入順序,元素不可重復(注意:元素雖然無放入順序,但是元素在set中的位置是有該元素的HashCode決定的,其位置其實是固定的)
List介面有三個實現類:LinkedList,ArrayList,Vector
LinkedList:底層基於鏈表實現,鏈表內存是散亂的,每一個元素存儲本身內存地址的同時還存儲下一個元素的地址。鏈表增刪快,查找慢
ArrayList和Vector的區別:ArrayList是非線程安全的,效率高;Vector是基於線程安全的,效率低
Set介面有兩個實現類:HashSet(底層由HashMap實現),LinkedHashSet
SortedSet介面有一個實現類:TreeSet(底層由平衡二叉樹實現)
Query介面有一個實現類:LinkList
Map介面有三個實現類:HashMap,HashTable,LinkeHashMap
HashMap非線程安全,高效,支持null;HashTable線程安全,低效,不支持null
SortedMap有一個實現類:TreeMap
其實最主要的是,list是用來處理序列的,而set是用來處理集的。Map是知道的,存儲的是鍵值對
set 一般無序不重復.map kv 結構 list 有序 。
6. Java集合類 介面 繼承
不是,介面中的方法只是一個【約定】,並沒有實際的執行邏輯,所以實際上只有子類的方法是可以執行的。
7. java 里的 Collection介面有什麼作用
Collection是集合類介面,是所有集合類的,父類,提供了關於集合的一些操作,如插入、刪除、判斷一個元素是否其成員、遍歷等
8. java常見的集合、介面、類的區別和聯系
集合類似於數組,不過相對數組集合更有優勢,不限定集合的長度,可以添加任意多的元素。同時,一個集合可以存入不同的元素,不過通常情況下集合會和數組一樣指定單一的元素,方便操作。集合中限定元素成為泛型。
介面和類差不多,不過介面中的方法都屬於抽象的方法(也就是只有方法名,參數,沒有方法的主題)。介面需要類實現(類似與繼承,implement),實現該介面的類必須重寫介面中所有的方法(也就是把抽象的方法加上方法主題,便於運用)。
類就比較普通了,經常都會接觸到,類通常用於封裝多個方法,把有關聯的方法集合在一起,便於調用(主函數也屬於方法的一種,是寫在類裡面的)。