A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 伯爵公子 中级黑马   /  2015-7-21 09:07  /  757 人查看  /  13 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. import java.util.HashMap;
  2. import java.util.Map;
  3. import java.util.Set;
  4. import java.util.Iterator;

  5. class MapDemo
  6. {
  7.         public static void main(String[] args)
  8.         {
  9.                 Map<Integer,String> map = new HashMap<Integer,String>();
  10.                 method(map);
  11.         }
  12.         //学号和姓名
  13.         public static void method(Map<Integer,String> map)
  14.         {
  15.                 //添加元素
  16.                 System.out.println(map.put(1,"李二"));//null
  17.                 System.out.println(map.put(1,"李一"));//李二
  18.                 System.out.println(map);//1=李一

  19.                 map.put(2,"王二");
  20.                 map.put(3,"张三");
  21.                 System.out.println(map);


  22.                 /*
  23.                 遍历方法1:通过map的keySet方法获取map中所有的键所在的set集合,
  24.                 再通过set的迭代器获取到每一个键,再对每一个键通过get(key)方法获取对应的值。
  25.                 */
  26.                 Set<Integer> keySet= map.keySet();
  27.                 Iterator<Integer> it1 = keySet.iterator();
  28.                 while (it1.hasNext())
  29.                 {
  30.                         Integer key = it1.next();
  31.                         String value = map.get(key);
  32.                         System.out.println(key+"\t"+value);
  33.                 }

  34.                 /*
  35.                 遍历方法2:通过map转成set就可以迭代。用entrySet方法将键值映射关系作为对象存储到set集合中,
  36.                 而这个映射关系的类型就是Map.Entry类型。
  37.                 */
  38.                 Set<Map.Entry<Integer,String>> entrySet = map.entrySet();

  39.                 Iterator<Map.Entry<Integer,String>> it2 = entrySet.iterator();
  40.                 while (it2.hasNext())
  41.                 {
  42.                         Map.Entry<Integer,String> me = it2.next();
  43.                         Integer key = me.getKey();
  44.                         String value = me.getValue();
  45.                         System.out.println(key+"\t"+value);
  46.                 }
  47.         }
  48. }
复制代码


Map的遍历方式比较复杂,记住代码很重要。

13 个回复

倒序浏览
是的,Map集合是我比较薄弱的地方,学习了。
回复 使用道具 举报
谢谢分享
回复 使用道具 举报
李文思 发表于 2015-7-21 09:56
是的,Map集合是我比较薄弱的地方,学习了。

感觉差不多,当时学能记住,学了后面的IO就忘记了前面的集合类
回复 使用道具 举报

不客气,一起为黑马努力呀
回复 使用道具 举报
刚看过这些知识点。
回复 使用道具 举报
代晃 中级黑马 2015-7-22 08:12:25
7#
似曾相识的感觉扑面而来
回复 使用道具 举报
fantianfei 发表于 2015-7-22 07:58
刚看过这些知识点。

这个知识点比较重要呀,就是有点容易忘记
回复 使用道具 举报
代晃 发表于 2015-7-22 08:12
似曾相识的感觉扑面而来

我也是很多知识点看完就似曾相识,昨天刚学的切割文件和合并文件,今天就忘记具体代码了。哎
回复 使用道具 举报
rxtm 中级黑马 2015-7-23 12:15:00
10#
只记得第一种,第二种感觉都没见过
回复 使用道具 举报
rxtm 发表于 2015-7-23 12:15
只记得第一种,第二种感觉都没见过

那你得好好看看,毕老师视频上有呀
回复 使用道具 举报
rxtm 中级黑马 2015-7-24 16:41:28
12#
伯爵公子 发表于 2015-7-24 09:09
那你得好好看看,毕老师视频上有呀

我没看过他的视频
回复 使用道具 举报
rxtm 发表于 2015-7-24 16:41
我没看过他的视频

那你是怎么学得?
回复 使用道具 举报
rxtm 中级黑马 2015-7-25 13:53:26
14#

看书,又看过一点马士兵的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马