深入解讀Java三大集合之map list set的用法
Map接口和Collection接口是所有集合框架的父接口:
Collection接口的子接口包括:Set接口和List接口
Map接口的實現(xiàn)類主要有:HashMap、TreeMap、Hashtable、ConcurrentHashMap以及Properties等
Set接口的實現(xiàn)類主要有:HashSet、TreeSet、LinkedHashSet等
List接口的實現(xiàn)類主要有:ArrayList、LinkedList、Stack以及Vector等
List,Set,Map三者的區(qū)別?List、Set、Map 是否繼承自 Collection 接口?List、Map、Set 三個接口存取元素時,各有什么特點?

Collection集合主要有List和Set兩大接口
(1)List:是一個有序,元素可以重復(fù)。常用的實現(xiàn)類有 ArrayList、LinkedList 和 Vector。
(2)Set:是一個無序,不可以存儲重復(fù)元素,只允許存入一個null元素,Set 接口常用實現(xiàn)類是 HashSet、LinkedHashSet 以及 TreeSet。
Map
Map是一個鍵值對集合,存儲鍵、值和之間的映射。 Key無序,唯一;value 不要求有序,允許重復(fù)。Map沒有繼承于Collection接口,從Map集合中檢索元素時,只要給出鍵對象,就會返回對應(yīng)的值對象。
Map 的常用實現(xiàn)類:HashMap、TreeMap、HashTable、LinkedHashMap、ConcurrentHashMap
- (1)Map 存元素和取元素和刪除(put、get、remove)
import java.util.HashMap;
/**
* Map 存元素和取元素和刪除(put、get、remove)
* @author 小治的高等數(shù)學(xué)
*
*/
public class Map1 {
public static void main(String[] args) {
// 創(chuàng)建 HashMap 對象 Sites
HashMap<String, String> sites = new HashMap<String, String>();
// 添加鍵值對
sites.put("1", "Google");
sites.put("2", "Runoob");
sites.put("3", "Taobao");
sites.put("4", "Zhihu");
// 輸出Map中所有元素
System.out.println(sites);
// 拿出Map中key的為1的value的值
System.out.println(sites.get("1"));
System.out.println(sites.get("3"));
sites.remove("3");
System.out.println(sites.get("3"));
System.out.println(sites);
}
}
- (2)循環(huán)Map
package basics.map;
import java.util.HashMap;
import java.util.Map.Entry;
public class Map2 {
public static void main(String[] args) {
// 創(chuàng)建 HashMap 對象 Sites
HashMap<Integer, String> sites = new HashMap<Integer, String>();
// 添加鍵值對
sites.put(4, "Zhihu");
sites.put(1, "Google");
sites.put(2, "Runoob");
sites.put(3, "Taobao");
sites.put(4, "Zhihu2");
// 只循環(huán) key
for (Integer i : sites.keySet()) {
System.out.println("key: " + i + " value: " + sites.get(i));
}
// 只循環(huán) value 值
for(String value: sites.values()) {
// 輸出每一個 value
System.out.println(value + ", ");
}
// 循環(huán) key 和 value
for (Entry<Integer, String> entry : sites.entrySet()) {
System.out.println("只輸出key "+entry.getKey());
System.out.println("只輸出value "+entry.getValue());
}
for (int i = 0; i <= sites.size(); i++) {
System.out.println(sites.get(i));
}
}
}
以上就是深入解讀Java三大集合之map list set的用法的詳細內(nèi)容,更多關(guān)于Java 三大集合的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
關(guān)于java中可變長參數(shù)的定義及使用方法詳解
下面小編就為大家?guī)硪黄P(guān)于java中可變長參數(shù)的定義及使用方法詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-12-12
Spring Boot + Kotlin整合MyBatis的方法教程
前幾天由于工作需要,便開始學(xué)習(xí)了kotlin,java基礎(chǔ)扎實學(xué)起來也還算比較快,對于kotlin這個編程語言自然是比java有趣一些,下面這篇文章主要給大家介紹了關(guān)于Spring Boot + Kotlin整合MyBatis的方法教程,需要的朋友可以參考下。2018-01-01
spring boot 項目中使用thymeleaf模板的案例分析
這篇文章主要介紹了spring boot 項目中使用thymeleaf模板的案例分析,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-09-09
springcloud+nacos實現(xiàn)灰度發(fā)布示例詳解
這篇文章主要介紹了springcloud+nacos實現(xiàn)灰度發(fā)布,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-08-08

