package com.pb.collection;

 import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Scanner;
import java.util.Set; public class AssignmentTest {
public static void main(String args[])
{
//定义一个List<>规定他的类型是HashMap<String,Object>,实现的ArrayList这个类
List<HashMap<String,Object>> list=new ArrayList<HashMap<String,Object>>();
//从控制台输入东西
Scanner in=new Scanner(System.in);
//提示语句
System.out.println("输入y或者n选择,y就是表示开始/继续,n表示退出或者结束");
//while循环.in有一个next()方法
while("y".equals(in.next())){
/***
* 这里也可以写成
* HashMap<String,Object> map=new HashMap<String,Object>();
*/ Map<String,Object> map=new HashMap<String,Object>();
System.out.println("请输入姓名");
map.put("name", in.next());
System.out.println("请输入年龄");
map.put("age", in.next());
System.out.println("请输入性别boy or girl");
map.put("sex", in.next());
list.add((HashMap<String,Object>)map);
//list.add(map); //对应上面另外一种写法
System.out.println("输入y继续或输入N结束");//提示是否继续进行循环
}
Iterator<HashMap<String,Object>> it1=list.iterator();//定义一个遍历里。list型也有iterator()这个方法可以直接使用
/***
* 第一种方式
*/
/*while(it1.hasNext())
{ *//***
* 因为list里面传出来的值是HashMap<String,Object>,所以这里需要定义成HashMap<String,Object>,
* 我定义成String跟object都报错了
*
*//*
HashMap<String,Object> key=it1.next();
System.out.println(key.get("name"));//HashMap<String,Object> 有get()这个方法。通过传进去一个key去获取一个value
System.out.println(key.get("age"));
System.out.println(key.get("sex"));
}*/
/***
*
* 第二种方式
*/
for(HashMap<String,Object> list1:list){
Set<String> set=list1.keySet();
/*System.out.println(list1.get("name"));
System.out.println(list1.get("age"));
System.out.println(list1.get("sex"));*/
for(String set1:set){
//这里的list1是Hash<String,Object>,所有list1.get(key)来获取他的value
System.out.println(list1.get(set1));
}
}
} }

运行结果:

最新文章

  1. CentOS 7 (RHEL 7)服务管理命令的变化
  2. 当display=none时,元素和子元素高度为0的解决办法
  3. UIModalPresentationStyle和UIModalTransitionStyle
  4. IOS高级编程之一:多点触摸与手势验证
  5. MTK机子修复分区信息
  6. VS2012减负:加快启动速度,减少编辑卡壳
  7. Exploring TCP state machine by graphs
  8. [思考] hdu 4811 Ball
  9. Black Jack
  10. excel_VB宏脚本_批量生成点餐宝接受的格式
  11. “织梦”CMS注入高危漏洞情况
  12. usaco training 4.1.3 fence6 题解
  13. HTML 基础学习笔记
  14. Git 初学
  15. 点击button1弹出form2,并在form2中点击button2来调用form1的方法
  16. 编译原理:基于状态转换图识别for语句
  17. 笔记:Hibernate 数据库方言表
  18. 【Android学习笔记】布局的简单介绍
  19. 妙解Servlet四大域对象
  20. python基础-列表(7)

热门文章

  1. [BZOJ 3888] [Usaco2015 Jan] Stampede 【线段树】
  2. The Perfect Stall
  3. Prefixes and Suffixes
  4. Hibernate 注解多对一 要求在多那边产生一个外键而不会另外产生一个表
  5. struts2-core-2.1.6.jar!/struts-default.xml无法加载的问题
  6. DLL ActiveForm 线程同步问题
  7. HTTP, W3SVC, WAS 和 W3WP
  8. 【HDOJ】3308 LCIS
  9. java学习面向对象之异常之二
  10. Oracle RAC学习笔记:基本概念及入门