Map集合——(1) 常用方法与MapSet

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_40285302/article/details/82948920
 
  1. package cn.itcast.p6.map.demo;

  2.  
  3. import java.util.Collection;

  4. import java.util.HashMap;

  5. import java.util.Iterator;

  6. import java.util.Map;

  7. import java.util.Set;

  8.  
  9. public class MapDemo {

  10.  
  11. public static void main(String[] args) {

  12.  
  13. Map<Integer,String> map = new HashMap<Integer,String>();

  14. method(map);

  15.  
  16. }

  17.  
  18.  
  19. }

  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26. public static void method(Map<Integer,String> map){//学号和姓名

  27.  
  28.  
  29. // 添加元素。

  30. System.out.println(map.put(8, "wangcai"));//null

  31. System.out.println(map.put(8, "xiaoqiang"));//wangcai 存相同键,值会覆盖

  32. //会返回被覆盖的键的值。

  33. map.put(2,"zhangsan");

  34. map.put(7,"zhaoliu");

  35.  
  36.  
  37. //删除。

  38. System.out.println("remove:"+map.remove(2)); //会返回被删除的键的值

  39.  
  40. //判断。

  41. System.out.println("containskey:"+map.containsKey(7));//返回boolean类值

  42. //true 或者false

  43.  
  44. //获取。

  45. System.out.println("get:"+map.get(6));//返回指定键对应的值,若该键

  46. //不存在则返回null

  47.  
  48.  
  49. System.out.println(map); //打印输出所有map中的元素

  50.  
  51. }

  52.  
  53. }


二、KeySet( )

因为Map集合没有Iterator() 迭代器,所以使用keyset() 方法创建Set集合,再通过迭代器获取键,再通过键获取值。

 
  1. //取出map中的所有元素。

  2. //原理,通过keySet方法获取map中所有的键所在的Set集合,在通过Set的迭代器获取到每一个键,

  3. //在对每一个键通过map集合的get方法获取其对应的值即可。

  4.  
  5. Set<Integer> keySet = map.keySet();

  6. Iterator<Integer> it = keySet.iterator();

  7.  
  8. while(it.hasNext()){

  9. Integer key = it.next();

  10. String value = map.get(key);

  11. System.out.println(key+":"+value);

  12.  
  13. }


 entrySet:

       通过Map转成set就可以迭代。
       找到了另一个方法。entrySet。
       该方法将键和值的映射关系作为对象存储到了Set集合中,而这个映射关系的类型就是Map.Entry类型(结婚证)

 
  1. Set<Map.Entry<Integer, String>> entrySet = map.entrySet();

  2.  
  3. Iterator<Map.Entry<Integer, String>> it = entrySet.iterator();

  4.  
  5. while(it.hasNext()){

  6. Map.Entry<Integer, String> me = it.next();

  7. Integer key = me.getKey();

  8. String value = me.getValue();

  9. System.out.println(key+"::::"+value);

  10.  
  11. }


 
  1. Collection<String> values = map.values();

  2.  
  3. Iterator<String> it2 = values.iterator();

  4. while(it2.hasNext()){

  5. System.out.println(it2.next());

  6.  
  7.  

猜你喜欢

转载自blog.csdn.net/qq_40285302/article/details/82948920