欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解JAVA里面獲取map的key和value的方法

 更新時間:2019年09月04日 09:28:59   作者:CL_Fighting  
這篇文章主要介紹了詳解JAVA里面獲取map的key和value的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

獲取map的key和value的方法分為兩種形式:

  • map.keySet():先獲取map的key,然后根據(jù)key獲取對應的value;
  • map..entrySet():同時查詢map的key和value,只需要查詢一次。

同時遍歷key和value時,keySet與entrySet方法的性能差異取決于key的具體情況,如復雜度(復雜對象)、離散度、沖突率等。換言之,取決于HashMap查找value的開銷。entrySet一次性取出所有key和value的操作是有性能開銷的,當這個損失小于HashMap查找value的開銷時,entrySet的性能優(yōu)勢就會體現(xiàn)出來。

只遍歷key時,keySet方法更為合適,因為entrySet將無用的value也給取出來了,浪費了性能和空間。

只遍歷value時,使用vlaues方法是最佳選擇,entrySet會略好于keySet方法。

通過map.keySet() 方法

方法一:通過得到key的值,然后獲取value

for(String key : map.keySet()){
  String value = map.get(key);
  System.out.println(key+" "+value);
}

方法二:使用迭代器,獲取key

Iterator<String> iter = map.keySet().iterator();
 while(iter.hasNext()){
  String key=iter.next();
  String value = map.get(key);
  System.out.println(key+" "+value);
 }

通過map.entrySet()方法

方法一:循環(huán)map里面的每一對鍵值對,然后獲取key和value

for(Entry<String, String> vo : map.entrySet()){
  vo.getKey();
  vo.getValue();
  System.out.println(vo.getKey()+" "+vo.getValue());
 }

方法二:使用迭代器,獲取key

Iterator<Entry<String,String>> iter = map.entrySet().iterator();
 while(iter.hasNext()){
  Entry<String,String> entry = iter.next();
  String key = entry.getKey();
  String value = entry.getValue();
  System.out.println(key+" "+value);
 }

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Java多線程編程中使用Condition類操作鎖的方法詳解

    Java多線程編程中使用Condition類操作鎖的方法詳解

    Condition是java.util.concurrent.locks包下的類,提供了對線程鎖的更精細的控制方法,下面我們就來看一下Java多線程編程中使用Condition類操作鎖的方法詳解
    2016-07-07
  • Java泛型的簡單實例

    Java泛型的簡單實例

    這篇文章介紹了Java泛型的簡單實例,有需要的朋友可以參考一下
    2013-10-10
  • Java日期時間以及日期相互轉換

    Java日期時間以及日期相互轉換

    這篇文章主要為大家詳細介紹了Java日期時間,以及日期相互轉換的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • java WebSocket的實現(xiàn)以及Spring WebSocket示例代碼

    java WebSocket的實現(xiàn)以及Spring WebSocket示例代碼

    本篇文章主要介紹了java WebSocket的實現(xiàn)以及Spring WebSocket,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-01-01
  • SpringSessionRedis配置及發(fā)現(xiàn)的問題講解

    SpringSessionRedis配置及發(fā)現(xiàn)的問題講解

    今天小編就為大家分享一篇關于SpringSessionRedis配置及發(fā)現(xiàn)的問題講解,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • Java中Socket實現(xiàn)數(shù)據(jù)通信的示例代碼

    Java中Socket實現(xiàn)數(shù)據(jù)通信的示例代碼

    本文主要介紹了Java中Socket實現(xiàn)數(shù)據(jù)通信的示例代碼,Socket可以建立起客戶端和服務器之間的連接,實現(xiàn)數(shù)據(jù)的傳輸和交互,感興趣的可以了解一下
    2023-09-09
  • 如何使用Java調用Linux系統(tǒng)命令

    如何使用Java調用Linux系統(tǒng)命令

    這篇文章主要介紹了如何使用Java調用Linux系統(tǒng)命令,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • 詳解Spring+Hiernate整合

    詳解Spring+Hiernate整合

    這篇文章主要介紹了詳解Spring+Hiernate整合,spring整合hibernate主要介紹以xml方式實現(xiàn),有興趣的可以了解一下。
    2017-04-04
  • SpringBoot3整合Druid監(jiān)控功能的項目實踐

    SpringBoot3整合Druid監(jiān)控功能的項目實踐

    Druid連接池作為一款強大的數(shù)據(jù)庫連接池,提供了豐富的監(jiān)控和管理功能,成為很多Java項目的首選,本文主要介紹了SpringBoot3整合Druid監(jiān)控功能的項目實踐,感興趣的可以了解一下
    2024-01-01
  • Java instanceof和getClass()區(qū)別實例解析

    Java instanceof和getClass()區(qū)別實例解析

    這篇文章主要介紹了Java instanceof和getClass()區(qū)別實例解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-07-07

最新評論