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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

/*代码演示HashMap嵌套HashMap
* 如:管理学院
*                 三班
*                         索小于   22;
*                         琳娜       23
*                 四班
*                         王红卫  23
*                         石运来  24
* 1,用一个键为班级的,值为map集合的大集合来接收数据
* 2,遍历集合
*/
实现代码如下
  1. public class HashMapTest {
  2.         public static void main(String[] args) {
  3.                 //创建外层集合对象glxy
  4.                 HashMap<String,HashMap<String,Integer>> glxy=new HashMap<String,HashMap<String,Integer>>();
  5.                
  6.                 //创建内存集合对象three four作为外层对象的值
  7.                 HashMap<String,Integer> three=new HashMap<String,Integer>();
  8.                 HashMap<String,Integer> four=new HashMap<String,Integer>();
  9.                
  10.                 //为三班和四班添加元素
  11.                 three.put("索小于", 22);
  12.                 three.put("琳娜", 23);
  13.                 four.put("王红卫", 23);
  14.                 four.put("石运", 24);
  15.                
  16.                 //把内层合作为值添加到外层集合
  17.                 glxy.put("三班", three);
  18.                 glxy.put("四班", four);
  19.                
  20.                 //遍历集合
  21.                 Set<String> set=glxy.keySet();
  22.                 for(String key:set){//用外层循环遍历班级
  23.                         System.out.println(key);
  24.                         HashMap<String,Integer> glassValue=glxy.get(key);
  25.                         Set<String> glassSet=glassValue.keySet();
  26.                         for(String name:glassSet){//用内层循环遍历班级的学生
  27.                                 Integer age=glassValue.get(name);
  28.                                 System.out.println("\t"+name+"----"+age);
  29.                         }
  30.                 }
  31.         }
  32. }
复制代码




2 个回复

倒序浏览
就是跟二位数组差不多
回复 使用道具 举报
edithe 发表于 2015-6-9 11:33
就是跟二位数组差不多

可以这么理解
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马