Java中关于Map的keySet()、entrySet()的解释

简介: Java中关于Map的keySet()、entrySet()的解释

前言

最近在开发过程中总是要去遍历Map集合,特此记录一下。

跟大家分享一下Map中两个常用的方法,keySet()和entrySet(),希望能帮到有问题的小朋友。

Map中提供了常用方法:keySet()、entrySet()等

由于Map中存放的元素均为键值对,故每一个键值对必然存在一个映射关系。

1、keySet()方法返回值是Map中key值的集合;

2、entrySet()返回值这个map中各个键值对映射关系的集合,此集合的类型为Map.Entry。

Map中采用Entry内部类来表示一个映射项,映射项包含Key和Value。Map.Entry里面包含getKey()和getValue()方法

该方法entrySet()返回值就是这个map中各个键值对映射关系的集合,为Set> entrySet()。

示例

keySet()

public static void main(String[] args) {
    Map<String,String> map = new HashMap<String,String>();
    map.put("1", "纪晓岚");
    map.put("2", "和珅");
    map.put("3", "刘全");
    for (String key : map.keySet()) {
        System.out.println("key= "+ key + " and value= " + map.get(key));
    }
}

输出结果

image.png

entrySet()

entrySet实现了Set接口,里面存放的是键值对。一个K对应一个V。

通过getKey()得到K,getValue得到V。

public static void main(String[] args) {
    Map<String,String> map = new HashMap<String,String>();
    map.put("1", "纪晓岚");
    map.put("2", "和珅");
    map.put("3", "刘全");
    Set<Map.Entry<String, String>> entries = map.entrySet();
    for (Map.Entry<String, String> entry:entries) {
        System.out.println(entry.getKey()+","+entry.getValue());
    }
}

输出结果

image.png

总结

大概就是这些了,没有什么特别的知识点,算是比较基础的了,还是要在代码里运行才行,共勉。

目录
相关文章
|
4天前
|
Java 编译器 测试技术
【Java 基础 - 注解机制详细解释】
不能使用关键字extends来继承某个@interface,但注解在编译后,编译器会自动继承java.lang.annotation.Annotation接口. 虽然反编译后发现注解继承了Annotation接口,请记住,即使Java的接口可以实现多继承,但定义注解时依然无法使用extends关键字继承@interface。 区别于注解的继承,被注解的子类继承父类注解可以用@Inherited: 如果某个类使用了被@Inherited修饰的Annotation,则其子类将自动具有该注解。
|
5天前
|
存储 安全 Java
Java的Map接口及其实现类的技术性文章
Java的Map接口及其实现类的技术性文章
7 0
|
6天前
|
存储 安全 Java
Java list set map等接口及其实现类
Java list set map等接口及其实现类
|
8天前
|
存储 Java Serverless
Java集合利器 Map & Set
Java集合利器 Map & Set
|
13天前
|
存储 自然语言处理 Java
数据结构-Java Map 和 Set-2
数据结构-Java Map 和 Set
6 0
|
13天前
|
Java
数据结构-Java Map 和 Set-1
数据结构-Java Map 和 Set
24 0
|
Java
4.15.1下面那一个属性与Java解释程序有关?
下面那一个属性与Java解释程序有关?
160 0
|
5天前
|
Java 开发者 UED
掌握Java多线程编程:从基础到高级
【5月更文挑战第31天】本文深入探讨了Java多线程编程的核心概念,包括线程的创建、生命周期、同步机制以及高级并发工具。通过实际示例和代码片段,读者将学会如何有效地管理和协调线程,以编写高效且稳定的并发应用程序。
|
5天前
|
安全 Java 调度
Java语言多线程编程技术深度解析
Java语言多线程编程技术深度解析
271 1
|
1天前
|
算法 安全 Java
Java性能优化(五)-多线程调优-Lock同步锁的优化
基本特点Lock锁的基本操作通常基于乐观锁实现,尽管在某些情况下(如阻塞时)它也可能采用悲观锁的策略。通过对比图,我们可以清晰地看到两种同步锁的基本特点。Lock同步锁与Synchronized的比较在Java中,同步锁机制是确保多线程安全访问共享资源的重要手段。与JVM隐式管理锁的Synchronized相比,Lock同步锁(以下简称Lock锁)提供了更细粒度的控制,通过显式地获取和释放锁,为开发者提供了更大的灵活性。一、基本特点。
11 1