java中的HashMap用法總結
前言
HashMap學習筆記
一、HashMap是什麼?
- HashMap 是一個雜湊表,它儲存的內容是鍵值對(key-value)對映。
- HashMap 實現了 Map 介面,根據鍵的 HashCode 值儲存資料,具有很快的訪問速度,最多允許一條記錄的鍵為
null,不支援執行緒同步。 - HashMap 是無序的,即不會記錄插入的順序。
- HashMap 繼承於AbstractMap,實現了 Map、Cloneable、java.io.Serializable 介面。
二、Java HashMap 常用方法
三、程式碼示例
1.遍歷集合物件的三種方式
- 轉陣列
Set<String> strings = map.keySet(); //以Set的形式返回所有的key,元素不允許重複
//轉陣列遍歷
Object[] objects = strings.toArray();
for (int i = 0; i < objects.length; i++) {
System.out.println(objects[i]);
}
- 迭代器
Set<String> strings = map.keySet(); //以Set的形式返回所有的key,元素不允許重複
//迭代器遍歷
Iterator<String> iterator = strings.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
- 增強for
Set<String> strings = map.keySet(); //以Set的形式返回所有的key,元素不允許重複
//增強for遍歷
for (String s : strings) {
System.out.println(s);
}
2.最重要的是Map遍歷,全部程式碼和執行結果如下
import java.util.*;
public class MapDemo {
public static void main(String[] args) {
Map<String, String> map = new HashMap<String, String>();
map.put("name1", "Tom");
System.out.println(map.put("name2", "Jack")); //返回為null
System.out.println(map.put("name1", "Jim")); //返回值為Tom
map.put("name3", "Lili");
System.out.println(map);
Set<String> strings = map.keySet(); //以Set的形式返回所有的key,元素不允許重複
Collection<String> values = map.values();
//轉陣列遍歷
Object[] objects = strings.toArray();
for (int i = 0; i < objects.length; i++) {
System.out.println(objects[i]);
}
//迭代器遍歷
Iterator<String> iterator = strings.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
//增強for遍歷
for (String s : values) {
System.out.println(s);
}
//遍歷Map
Set<Map.Entry<String, String>> entries = map.entrySet();
for (Map.Entry<String, String> entry : entries) {
System.out.println(entry.getKey() + ":" + entry.getValue());
}
// System.out.println(map.remove("name2")); //刪除key為name2的對映關係,並且返回值為name2對應的value
}
}
- 執行結果
null
Tom
{name3=Lili, name2=Jack, name1=Jim}
name3
name2
name1
name3
name2
name1
Lili
Jack
Jim
name3:Lili
name2:Jack
name1:Jim
總結
HashMap學習記錄
相關文章
- java之HashMap用法講解JavaHashMap
- Python numpy中矩陣的用法總結Python矩陣
- 淺談Java中的HashmapJavaHashMap
- 【Java】jdk1.8新特性及用法總結JavaJDK
- Java基礎 | Stream流原理與用法總結Java
- git在工作中的用法總結-使用篇Git
- JS中的call()方法和apply()方法用法總結JSAPP
- Promise用法總結Promise
- layui用法總結UI
- axios用法總結iOS
- less用法總結
- pandas用法總結
- Const 用法總結
- Java中HashMap的實現原理JavaHashMap
- 繼續總結Python中那些簡單好用的用法Python
- HTML中Progress標籤的定義及用法總結!HTML
- STL:vector用法總結
- STL:list用法總結
- STL:set用法總結
- STL:map用法總結
- xPath 用法總結整理
- Quartz:基本用法總結quartz
- jq命令用法總結
- Linux Shell中各種括號用法總結!Linux
- Java中DecimalFormat的用法JavaDecimalORM
- Java中super的用法Java
- 【高併發】AQS中的CountDownLatch、Semaphore與CyclicBarrier用法總結AQSCountDownLatch
- React屬性用法總結React
- 【Less】Less基本用法總結
- JAVA中String format的用法JavaORM
- Java中atomic包中的原子操作類總結Java
- 面試題總結:HashMap實現原理面試題HashMap
- git在工作中的用法總結-環境安裝篇Git
- Java中HashMap,LinkedHashMap,TreeMap的區別[轉]JavaHashMap
- 原始碼閱讀(19):Java中主要的Map結構——HashMap容器(下1)原始碼JavaHashMap
- Oracle臨時表的用法總結FLOracle
- Laravel 中 $request 獲取請求資訊 用法 總結Laravel
- Java中IO流的知識點總結Java