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));
}
}
} }

运行结果:

自己写的demo。List<HashMap<String,Object>>=new ArrayList<HashMap<String,Object>>的更多相关文章

  1. ArrayList<HashMap<String,Object>>集锦

    1.   Android中如何从一个Activity中ArrayList<HashMap<String,Object>>传递到另一个activity?      eg:     ...

  2. 当我写下Map<String,Object> map = new HashMap<>() https://www.jianshu.com/p/6b2e350e99be

    当我写下Map<String,Object> map = new HashMap<>();我到底在写什么? 我什么时候会写HashMap? 一个函数同时需要返回 多种 状态的情 ...

  3. 手写Spring+demo+思路

    我在学习Spring的时候,感觉Spring是很难的,通过学习后,发现Spring没有那么难,只有你去学习了,你才会发现,你才会进步 1.手写Spring思路: 分为配置.初始化.运行三个阶段如下图 ...

  4. 将ArrayList<HashMap<String, String>>转为ArrayList<Bundle>类型的解决方案

    Bundle是一种利用键值对存储的数据格式,而我们在程序中通常利用HashMap存储数据.在开发中,通过Http请求得到JSONArray类型的返回值,我选择利用ArrayList<HashMa ...

  5. Object类型的转为String类型

    Map<String, Object> scaleMap = new HashMap(): scaleMap.put("name","张三"); S ...

  6. 【转载】关于Java String, StringBuilder, StringBuffer, Hashtable, HashMap的面试题

    REF: http://blog.csdn.net/fightforyourdream/article/details/15333405 题目是一道简单的小程序,像下面这样:[java] view p ...

  7. 用于把List<Object>转换成Map<String,Object>形式

    /** * 用于把List<Object>转换成Map<String,Object>形式,便于存入缓存 * @author zhang_bo * @param keyName ...

  8. 把List<Map<String,Object>>转成Map<String,Object>

    Map<String, Object> parmMap = new HashMap<String, Object>(); //定义一个用于存储强转后的Map List<M ...

  9. Object、Function、String、Array原生对象扩展方法

    JavaScript原生对象的api有些情况下使用并不方便,考虑扩展基于Object.Function.String.Array扩展,参考了prototype.js的部分实现,做了提取和修改,分享下: ...

随机推荐

  1. bzoj 1002 [FJOI2007]轮状病毒 高精度&&找规律&&基尔霍夫矩阵

    1002: [FJOI2007]轮状病毒 Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 2234  Solved: 1227[Submit][Statu ...

  2. ping命令找不到

    重装系统后安装JDK了,网络一直不好,我ping了下,结果显示ping不是内部或者外部命令,在谷歌里百度了下,在环境变量的path后加上“;C:\Windows\System32”即可,果然有效哦. ...

  3. Netty高性能之道

    1. 背景 1.1. 惊人的性能数据 最近一个圈内朋友告诉我,通过使用Netty4 + Thrift压缩二进制编解码技术,他们实现了10W TPS(1K的复杂POJO对象)的跨节点远程服务调用.相比于 ...

  4. ibatis 中isNull, isNotNull与isEmpty, isNotEmpty区别

    在iBATIS中isNull用于判断参数是否为Null,isNotNull相反 isEmpty判断参数是否为Null或者空,满足其中一个条件则其true isNotEmpty相反,当参数既不为Null ...

  5. 从零开始制作jffs2文件系统

    JFFS2 是一个开放源码的项目(www.infradead.org). 它是在闪存上使用非常广泛的读/写文件系统,在嵌入式系统中被普遍的应用. 1.       安装mkfs工具 MTD主页:htt ...

  6. Spring MVC 中的REST支持

    本部分提供了支持 RESTful web 服务的主要 Spring 功能(或注释)的概述. @Controller 使用 @Controller 注释对将成为 MVC 中控制器的类进行注释并处理 HT ...

  7. activiti入门2流程引擎的API和服务基础

      RepositoryService : 管理和控制发布包和流程定义(包含了一个流程每个环节的结构和行为)的操作 除此之外,服务可以 查询引擎中的发布包和流程定义. 暂停或激活发布包,对应全部和特定 ...

  8. buffer busy waits

    Buffer busy waits 当会话想要访问缓冲区中的数据块,而该数据块正在被其他会话使用时将产生Buffer busy waits事件. 其他会话可能正从数据文件向缓冲器读取同样的数据块,或正 ...

  9. extjs几种常用方法

    1,提交 这种情况一般用于登录界面,也在表单提交应用比较多,大多是一个Button的提交事件,代码为: var loginForm =........; if (loginForm .form.isV ...

  10. c#后台验证

    #region 后台验证 panda /// 验证电话号码的主要代码如下: public bool IsTelephone(string str_telephone) { return System. ...