java中获取map的key和value的方法,map根据key获取value值

  java中获取map的key和value的方法,map根据key获取value值

  00-1010通过map 1遍历键值的四种方法。构建一个HashMap,并向hashMap 2中添加元素。方法1:先用keySet()取出所有键值,再取出对应的value——,用迭代器3遍历。方法二:先取出所有的键,然后通过key取出对应的值——,用迭代器遍历。4.方法3:通过entrySet()获取键值3354,增强for循环遍历。5.方法4:通过entrySet()获取键值3354,用迭代器遍历。6.完整代码。7.应用示例。

  00-1010 (1)用keySet()取出所有键值,然后取出对应的值3354增强用于循环遍历(2)用keySet()取出所有键值,然后取出对应的值3354并通过迭代器进行迭代(3)用entrySet获取key-value 3354增强用于循环遍历(4)用entrySet获取key-with。

  Map是java中的一个接口,Map.Entry是Map的一个内部接口。Map提供了一些常用的方法,如keySet()、entrySet()等。keySet()的返回值是Map中键值的集合;entrySet()的返回值也返回一个集集,其类型为Map.EntryK, V.映射。Entry是由Map声明的内部接口,它是通用的,定义为EntryK,V.它表示地图中的一个实体(一个键值对)。接口中有getkey()和getvalue方法。

  

目录

HashMap HashMap=new HashMap();HashMap.put(三国演义,罗贯中);HashMap.put(水浒传,施耐庵);HashMap.put(西游记,吴承恩);HashMap.put(红楼梦,曹雪芹);

 

  00-1010 2.1代码

  /*1,先用keySet()取出所有键值,然后再取出对应的value 3354 enhanced for loop traversation * */system . out . println(====1==1,先用keySet()取出所有键值,再取出对应的value 3354 enhanced for loop traversation==);set key set=hashmap . keyset();for(Object key : keyset){ system . out . println(key - hashmap . get(key));}2.2运行结果

  00-1010 3.1代码

  /*2,先用keySet()取出所有键值,再取出对应的value3354用iterator * */System.out.println遍历(====2==2,先用keySet()取出所有键值,再取出对应的value3354用iterator===);iterator iterator=keyset . iterator();while(iterator . has next()){ Object key=iterator . next();system . out . println(key - hashmap . get(key));}3.2运行结果

  00-1010 4.1代码

  /*3.拿钥匙-

  value值——增强for循环遍历*/ System.out.println("====3、通过entrySet()获得key-value值——增强for循环遍历===="); Set set = hashMap.entrySet(); for(Object key:set){ Map.Entry entry = (Map.Entry) key; System.out.println(entry.getKey()+"-"+entry.getValue()); }4.2 运行结果

  

 

  

 

  

5、方法四:通过entrySet()获得key-value值——使用迭代器遍历

5.1 代码

 

  

 /*4、通过entrySet()获得key-value值——使用迭代器遍历*/ System.out.println("====4、通过entrySet()获得key-value值——使用迭代器遍历===="); Set set1 = hashMap.entrySet(); Iterator iterator1 = set1.iterator(); while(iterator1.hasNext()){ Object itset = iterator1.next(); Map.Entry entry = (Map.Entry) itset; System.out.println(entry.getKey()+"-"+entry.getValue()); }

5.2 运行结果

 

  

 

  

 

  

6、完整代码

import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Set;public class MapTraverse { public static void main(String[] args){ HashMap hashMap = new HashMap(); hashMap.put("三国演义","罗贯中"); hashMap.put("水浒传","施耐庵"); hashMap.put("西游记","吴承恩"); hashMap.put("红楼梦","曹雪芹"); /*1、先用keySet()取出所有key值,再取出对应value——增强for循环遍历*/ System.out.println("====1、先用keySet()取出所有key值,再取出对应value——增强for循环遍历===="); Set keyset = hashMap.keySet(); for(Object key:keyset){ System.out.println(key+"-"+hashMap.get(key)); } /*2、先用keySet()取出所有key值,再取出对应value——使用迭代器遍历*/ System.out.println("====2、先用keySet()取出所有key值,再取出对应value——使用迭代器遍历===="); Iterator iterator = keyset.iterator(); while(iterator.hasNext()){ Object key = iterator.next(); System.out.println(key+"-"+hashMap.get(key)); } /*3、通过entrySet()获得key-value值——增强for循环遍历*/ System.out.println("====3、通过entrySet()获得key-value值——增强for循环遍历===="); Set set = hashMap.entrySet(); for(Object key:set){ Map.Entry entry = (Map.Entry) key; System.out.println(entry.getKey()+"-"+entry.getValue()); } /*4、通过entrySet()获得key-value值——使用迭代器遍历*/ System.out.println("====4、通过entrySet()获得key-value值——使用迭代器遍历===="); Set set1 = hashMap.entrySet(); Iterator iterator1 = set1.iterator(); while(iterator1.hasNext()){ Object itset = iterator1.next(); Map.Entry entry = (Map.Entry) itset; System.out.println(entry.getKey()+"-"+entry.getValue()); } }}

 

  

7、应用举例

7.1 问题描述

 

  使用HashMap添加3个员工对象,要求键:员工id值:员工对象并遍历显示工资>18000的员工(遍历方式最少两种)员工类:姓名、工资、员工id

  7.2 代码

  

import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Set;/*使用HashMap添加3个员工对象,要求键:员工id值:员工对象并遍历显示工资>18000的员工(遍历方式最少两种)员工类:姓名、工资、员工id*/public class MapExercise { public static void main(String[] args) { HashMap hashMap = new HashMap(); hashMap.put(1, new employee("Tom", 20000.0, 1)); hashMap.put(2, new employee("Jack", 10000.0, 2)); hashMap.put(3, new employee("Bob", 30000.0, 3)); hashMap.put(4, new employee("Marry", 17000.0, 4)); /*1、通过keySet()获取所有key值,再得到对应的value值——增强for循环遍历*/ System.out.println("====1、通过keySet()获取所有key值,再得到对应的value值——增强for循环遍历"); Set keyset = hashMap.keySet(); for (Object key : keyset) { employee m = (employee) hashMap.get(key); if (m.getSalary() > 18000) { System.out.println(m); } } /*2、通过entrySet()获取key-value值——使用迭代器遍历*/ System.out.println("====2、通过entrySet()获取key-value值——使用迭代器遍历===="); Set set = hashMap.entrySet(); Iterator iterator = set.iterator(); while (iterator.hasNext()) { Object itset = iterator.next(); Map.Entry entry = (Map.Entry) itset; employee m = (employee) entry.getValue(); if (m.getSalary() > 18000) { System.out.println(m); } } }}class employee{ private String name; private Double salary; private int id; public employee(String name, Double salary, int id) { this.name = name; this.salary = salary; this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Double getSalary() { return salary; } public void setSalary(Double salary) { this.salary = salary; } public int getId() { return id; } public void setId(int id) { this.id = id; } @Override public String toString() { return "employee{" + "name=" + name +  + ", salary=" + salary + ", id=" + id + }; }}

7.3 运行结果

 

  

 

  到此这篇关于Java实现Map遍历key-value的四种方法的文章就介绍到这了,更多相关Java Map遍历key-value内容请搜索盛行IT以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: