Fork me on GitHub

自己写的demo。List<HashMap<String,Object>>=new ArrayList<HashMap<String,Object>>

  

 1 package com.pb.collection;
 2 
 3 import java.util.ArrayList;
 4 import java.util.HashMap;
 5 import java.util.Iterator;
 6 import java.util.List;
 7 import java.util.Map;
 8 import java.util.Scanner;
 9 import java.util.Set;
10 
11 public class AssignmentTest {
12     public static void main(String args[])
13     {
14         //定义一个List<>规定他的类型是HashMap<String,Object>,实现的ArrayList这个类
15         List<HashMap<String,Object>> list=new ArrayList<HashMap<String,Object>>();
16         //从控制台输入东西
17         Scanner in=new Scanner(System.in);
18         //提示语句
19         System.out.println("输入y或者n选择,y就是表示开始/继续,n表示退出或者结束");
20         //while循环.in有一个next()方法
21         while("y".equals(in.next())){
22             /***
23              * 这里也可以写成
24              * HashMap<String,Object> map=new HashMap<String,Object>();
25              */
26             
27             Map<String,Object> map=new HashMap<String,Object>();
28             System.out.println("请输入姓名");
29             map.put("name", in.next());
30             System.out.println("请输入年龄");
31             map.put("age", in.next());
32             System.out.println("请输入性别boy  or  girl");
33             map.put("sex", in.next());
34             list.add((HashMap<String,Object>)map);
35             //list.add(map); //对应上面另外一种写法
36             System.out.println("输入y继续或输入N结束");//提示是否继续进行循环
37         }
38         Iterator<HashMap<String,Object>> it1=list.iterator();//定义一个遍历里。list型也有iterator()这个方法可以直接使用
39         /***
40          * 第一种方式
41          */
42         /*while(it1.hasNext())
43         {
44             
45             *//***
46              * 因为list里面传出来的值是HashMap<String,Object>,所以这里需要定义成HashMap<String,Object>,
47              * 我定义成String跟object都报错了
48              * 
49              *//*
50             HashMap<String,Object> key=it1.next();
51             System.out.println(key.get("name"));//HashMap<String,Object> 有get()这个方法。通过传进去一个key去获取一个value
52             System.out.println(key.get("age"));
53             System.out.println(key.get("sex"));
54         }*/
55         /***
56          * 
57          * 第二种方式
58          */
59         for(HashMap<String,Object> list1:list){
60             Set<String> set=list1.keySet();
61             /*System.out.println(list1.get("name"));
62             System.out.println(list1.get("age"));
63             System.out.println(list1.get("sex"));*/
64             for(String set1:set){
65                 //这里的list1是Hash<String,Object>,所有list1.get(key)来获取他的value
66                 System.out.println(list1.get(set1)); 
67             }
68         }
69     }
70 
71 }

运行结果:

 

posted @ 2015-11-07 22:46  ZZZZW  阅读(1868)  评论(0编辑  收藏  举报
AmazingCounters.com