位置:首页 > 软件操作教程 > 编程开发 > Java > 问题详情

Java HashMap

提问人:刘旭39发布时间:2020-11-27

HashMap

HashMap实现了Map接口,同时继承于AbstractMap类。它利用哈希值来存储数据,不允许重 复的键出现,但允许有null值和建,最多只允许一个为null的键(这也是因为HashMap键不能重 复)。HashMap因为使用了哈希表,所以对其中的映射关系具有很快的访问速度。HashMap类不保 证存人键值对映射关系的顺序,而且它的顺序可能会发生变化。

使用时通常将变量类型声明为Map类型,可以通过具体的实现类来定义不同对象的具体实例化 类型。

动手写1

Map<String, String〉simpleMap = new HashMap<>();

Map<Slring, Map<Slring, Sli'ing» complexMap = new HashMap<>0;

Map<Map<String, String>,String>otherComplexMap = new HashMap<>0;

上述代码中,第一个指定声明了键值都是String类型的Map集合;第二个指定声明了一个Map集 合,key为String类型,映射的值也是Map集合;第三个指定声明了一个Map集合,key为一个Map集 合对象,值为Siring类型。

package zuixu.comn;

import java.util.List;

import java.util.Map;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.Iterator;

//ArrayList中get()和set()方法的使用

public class TrigonometricMethod {

public static void main(String[] args) {

Map<String, String>hashMap = new HashMap<>();

hashMap.put("小明","11岁");

hashMap.put("小张","22岁"); 

hashMap.put("小刘","23岁");

//使用key集合遍历

System.out.println("通过Map.keySet遍历key和value:");

for (String key : hashMap.keySet()) {

System.out.println("key= " + key + "and value= " +hashMap.get(key));

}

//使用Map.Entry的迭代器遍历

System.out.println("通过Map.entrySet使用iterator遍历key和value:");

Iterator<Map.Entry<String,String>>it = hashMap.entrySet().iterator();

while (it.hasNext()) {

Map.Entry<String, String>entry = it.next();

System.out.println("key="+entry.getKey()+"and value=" + entry.getValue());

}

}

}

5MP$LU9@@GRJY%VCVST@ZPI.png

继续查找其他问题的答案?

相关视频回答
回复(0)
返回顶部