最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java HashMap詳解及實(shí)例代碼

 更新時(shí)間:2017年01月25日 10:03:06   投稿:lqh  
這篇文章主要介紹了java HashMap詳解及實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下

java HashMap

/*
* Map集合的特點(diǎn)
* 將鍵映射值的對(duì)象,一個(gè)映射不能包含重復(fù)的值;每個(gè)鍵最多只能映射到一個(gè)值
* 
* Map集合和Collection集合的區(qū)別?
* Map集合存儲(chǔ)元素是成對(duì)出現(xiàn)的,Map集合的鍵是唯一的,就是可重復(fù)的??梢园堰@個(gè)理解為:夫妻對(duì)
* Collection集合存儲(chǔ)元素是單獨(dú)出現(xiàn)的,Collection的兒子Set是唯一的,List是可重復(fù)的,可以把這個(gè)理解為:光棍
* 
* 注意:
* Map集合的數(shù)據(jù)結(jié)構(gòu)值針對(duì)鍵有效,限值無效
* Collection集合的數(shù)據(jù)結(jié)構(gòu)是針對(duì)元素有效
* 
* Map集合的功能概述:
* 1:添加功能
* V put(K key,V value);//添加元素
* 如果鍵是第一次存儲(chǔ),就直接存儲(chǔ)元素,返回null
* 如果鍵不是第一次存儲(chǔ),就用值把以前的值替換掉,返回以前的值
* 
* 2:刪除功能
* void clear();//移除所有的鍵值對(duì)元素
* V remove(Object key);//根據(jù)鍵刪除鍵值對(duì)元素,并把值返回
* 
* 3:判斷功能
* boolean containsKey(Object key);//判斷集合是否包含指定的鍵
* boolean containsValue(Object value);//判斷集合是否包含指定的值
* boolean isEmpty();//判斷集合是否為空
* 
* 4:獲取功能
* set<Map,Entry<E,V>> entrySet();獲取鍵值對(duì)的對(duì)象集合
* V get(Object key);//根據(jù)鍵獲取值
* Set<K> keySet();//獲取集合中所有鍵的集合
* Collection<V> values();//獲取集合中所有值的集合
* 
* 5:長(zhǎng)度功能
* int size();//返回集合中的鍵值對(duì)的對(duì)數(shù)
* */

 Map集合的遍歷

方式1,根據(jù)鍵查詢值

獲取所有鍵的集合

遍歷鍵的集合,獲取每一個(gè)鍵

根據(jù)鍵,查詢值

方式2,根據(jù)鍵值對(duì)的對(duì)象查詢鍵和值

獲取所有鍵值對(duì)的對(duì)象的集合

遍歷鍵值對(duì)的對(duì)象的集合,獲取到每一個(gè)鍵值對(duì)的對(duì)象

根據(jù)鍵值對(duì)的對(duì)象,查詢鍵和值

方式1,根據(jù)鍵查詢值

/*

* Map集合的遍歷,根據(jù)鍵查詢值
* 
* 思路:
* A:獲取所有的鍵
* B:遍歷鍵的集合,獲取得到每一個(gè)鍵
* C:根據(jù)鍵查詢值
* */

 

import java.util.HashMap;
import java.util.Map;
import java.util.Set;
 
/*
 * Map集合的遍歷,根據(jù)鍵查詢值
 *
 * 思路:
 * A:獲取所有的鍵
 * B:遍歷鍵的集合,獲取得到每一個(gè)鍵
 * C:根據(jù)鍵查詢值
 * */
 
public class IntegerDemo {
  public static void main(String[] args) {
    // TODO Auto-generated method stub
 
    Map<String, String> map = new HashMap<String, String>();
 
    map.put("hello", "world");
    map.put("java", "c++");
    map.put("sql", "os");
 
    System.out.println(map);
 
    // A:獲取所有的鍵
    Set<String> set = map.keySet();
 
    // B:遍歷鍵的集合,獲取得到每一個(gè)鍵
    for (String key : set) {
      // C:根據(jù)鍵查詢值
      String value = map.get(key);
      System.out.println(key + "---" + value);
    }
  }
}

方式2,根據(jù)鍵值對(duì)的對(duì)象查詢鍵和值

/*
* Map集合的遍歷,根據(jù)對(duì)象查詢鍵和值
* 
* 思路:
* A:獲取所有的鍵值對(duì)對(duì)象的集合
* B:遍歷鍵值對(duì)對(duì)象的集合,得到每一個(gè)鍵值對(duì)的對(duì)象
* C:獲取鍵和值
* */

import java.util.HashMap;
import java.util.Map;
import java.util.Set;
 
/*
 * Map集合的遍歷,根據(jù)對(duì)象查詢鍵和值
 *
 * 思路:
 * A:獲取所有的鍵值對(duì)對(duì)象的集合
 * B:遍歷鍵值對(duì)對(duì)象的集合,得到每一個(gè)鍵值對(duì)的對(duì)象
 * C:獲取鍵和值
 * */
 
public class IntegerDemo {
  public static void main(String[] args) {
    // TODO Auto-generated method stub
 
    Map<String, String> map = new HashMap<String, String>();
 
    map.put("hello", "world");
    map.put("java", "c++");
    map.put("sql", "os");
 
    System.out.println(map);
 
    // A:獲取所有的鍵值對(duì)對(duì)象的集合
    Set<Map.Entry<String, String>> set = map.entrySet();
 
    // B:遍歷鍵值對(duì)對(duì)象的集合,得到每一個(gè)鍵值對(duì)的對(duì)象
    for (Map.Entry<String, String> me : set) {
      // C:獲取鍵和值
      String key = me.getKey();
      String value = me.getValue();
      System.out.println(key + "---" + value);
    }
  }
}
 


 


/*
* 1:HashMap和Hashtable的區(qū)別?
* HashMap線程不安全,效率高,允許null鍵和null值
* Hashtable線程安全,效率低,不允許null鍵和null值
* 
* 2:List,Set,Map等接口是否都繼承于Map接口?
* List,Set不是繼承自Map接口,它們繼承自Collection接口
* Map接口本身就是一個(gè)頂層接口
* */
import java.util.HashMap;
import java.util.Hashtable;
 
public class IntegerDemo {
  public static void main(String[] args) {
    // TODO Auto-generated method stub
 
    HashMap<String, String> hm = new HashMap<String, String>();
    Hashtable<String, String> ht = new Hashtable<String, String>();
 
    hm.put("hello", "world");
    hm.put("java", "c++");
    hm.put(null, "sql");
 
    ht.put("hello", "world");
    ht.put("java", "c++");
    ht.put(null, "sql");// Exception in thread "main"
              // java.lang.NullPointerException
  }
}

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • Java 并發(fā)編程中如何創(chuàng)建線程

    Java 并發(fā)編程中如何創(chuàng)建線程

    這篇文章主要介紹了Java 并發(fā)編程中如何創(chuàng)建線程,幫助大家更好的理解和學(xué)習(xí)使用Java,感興趣的朋友可以了解下
    2021-03-03
  • java使用集合實(shí)現(xiàn)通訊錄功能

    java使用集合實(shí)現(xiàn)通訊錄功能

    這篇文章主要為大家詳細(xì)介紹了java使用集合實(shí)現(xiàn)通訊錄功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • SpringCLoud搭建Zuul網(wǎng)關(guān)集群過程解析

    SpringCLoud搭建Zuul網(wǎng)關(guān)集群過程解析

    這篇文章主要介紹了SpringCLoud搭建Zuul網(wǎng)關(guān)集群過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • 詳解Java利用ExecutorService實(shí)現(xiàn)同步執(zhí)行大量線程

    詳解Java利用ExecutorService實(shí)現(xiàn)同步執(zhí)行大量線程

    這篇文章主要介紹了Java利用ExecutorService實(shí)現(xiàn)同步執(zhí)行大量線程,ExecutorService可以維護(hù)我們的大量線程在操作臨界資源時(shí)的穩(wěn)定性。
    2017-03-03
  • HashMap之keyset()方法底層原理解讀

    HashMap之keyset()方法底層原理解讀

    這篇文章主要介紹了HashMap之keyset()方法底層原理解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • Java使用Curator進(jìn)行ZooKeeper操作的詳細(xì)教程

    Java使用Curator進(jìn)行ZooKeeper操作的詳細(xì)教程

    Apache Curator 是一個(gè)基于 ZooKeeper 的 Java 客戶端庫(kù),它極大地簡(jiǎn)化了使用 ZooKeeper 的開發(fā)工作,在分布式系統(tǒng)中,ZooKeeper 通常被用來作為協(xié)調(diào)服務(wù),而 Curator 則為我們提供了更簡(jiǎn)潔易用的接口,本文將介紹 Curator 的核心功能及實(shí)踐樣例,需要的朋友可以參考下
    2025-04-04
  • Spring Cloud CLI簡(jiǎn)單介紹

    Spring Cloud CLI簡(jiǎn)單介紹

    本文我們將介紹Spring Boot Cloud CLI(或簡(jiǎn)稱Cloud CLI)。該工具為Spring Boot CLI提供了一組命令行增強(qiáng)功能,有助于進(jìn)一步抽象和簡(jiǎn)化Spring Cloud部署。感興趣的小伙伴們可以參考一下
    2018-12-12
  • SpringCloud gateway request的body驗(yàn)證或修改方式

    SpringCloud gateway request的body驗(yàn)證或修改方式

    這篇文章主要介紹了SpringCloud gateway request的body驗(yàn)證或修改方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • 用攔截器修改返回response,對(duì)特定的返回進(jìn)行修改操作

    用攔截器修改返回response,對(duì)特定的返回進(jìn)行修改操作

    這篇文章主要介紹了用攔截器修改返回response,對(duì)特定的返回進(jìn)行修改操作。具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • Java中的transient關(guān)鍵字解析

    Java中的transient關(guān)鍵字解析

    這篇文章主要介紹了Java中的 transient關(guān)鍵字解析,有時(shí)候我們的一些敏感信息比如密碼并不想序列化傳輸給對(duì)方,這個(gè)時(shí)候transient關(guān)鍵字就派上用場(chǎng)了,如果一個(gè)類的變量加上了transient關(guān)鍵字那么這個(gè)字段就不會(huì)被序列化,需要的朋友可以參考下
    2023-09-09

最新評(píng)論

辽宁省| 黎川县| 吉首市| 宁强县| 钟山县| 义乌市| 福泉市| 炎陵县| 高台县| 东港市| 东光县| 平度市| 集安市| 进贤县| 南川市| 沭阳县| 平遥县| 水富县| 灵台县| 商城县| 汝州市| 汉寿县| 丹东市| 汉源县| 正宁县| 铜梁县| 博乐市| 沾益县| 洪洞县| 湖口县| 太白县| 紫金县| 义乌市| 长泰县| 澄迈县| 宣城市| 荆州市| 龙川县| 洪雅县| 广昌县| 隆子县|