一、测试数据准备

List<Map<String, String>> result = new ArrayList();
Map<String, String> map = new HashMap<>();
map.put("san", "张三");
map.put("si", "李四");
map.put("wu", "王五");
map.put("wang", "老王");
map.put("lao", "老张");
result.add(map);

二、将list<Map<String, String>>的结构数据转换成json数组

JSONArray jsonArray = JSONArray.parseArray(JSONArray.toJSON(result).toString());
System.out.println(jsonArray);

结果如下:
-------------------------------------------------------------------------------------------------

--------------[{"san":"张三","wang":"老王","si":"李四","lao":"老张","wu":"王五"}]-------------------

-------------------------------------------------------------------------------------------------

三、获取json数组中对应key的值

// 1.首先对数据进行遍历
for (Object o : jsonArray) {
// 2.其次再将object转成JsonObject类型
JSONObject jsonObject = (JSONObject) JSONObject.parse(JSON.toJSONString(o));
// 3.最后根据对应key获取对应的value值
System.out.println(jsonObject.get("san"));
System.out.println(jsonObject.get("wang"));
System.out.println(jsonObject.get("si"));
System.out.println(jsonObject.get("lao"));
System.out.println(jsonObject.get("wu"));
} 结果如下:
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
------------------------------张三 老王 李四 老张 王五-----------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------

四、调用Entry对象中的getkey()和getValue()方法获取键值

/**
* 如果既要遍历key又要value,那么建议这种方式,应为如果先获取keySet然后再执行
* map.get(key),map内部会执行两次遍历。
* 一次是在获取keySet的时候,一次是在遍历所有key的时候。
* 当我调用put(key,value)方法的时候,首先会把key和value封装到
* Entry这个静态内部类对象中,把Entry对象再添加到数组中,所以我们想获取
* map中的所有键值对,我们只要获取数组中的所有Entry对象,接下来
* 调用Entry对象中的getKey()和getValue()方法就能获取键值对了
*/
Set<java.util.Map.Entry<String, String>> entrys = map.entrySet();
for (java.util.Map.Entry<String, String> entry : entrys) {
  System.out.println(entry.getKey() + "--" + entry.getValue());
}
 
结果如下:
--------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------
------------------------------------san--张三------------------------------------------
------------------------------------wang--老王-----------------------------------------
------------------------------------si--李四-------------------------------------------
------------------------------------lao--老张------------------------------------------
------------------------------------wu--王五-------------------------------------------
--------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------

根据数据中的key获取value值的更多相关文章

  1. JavaScript 在函数中使用Ajax获取的值作为函数的返回值

    解决:JavaScript 在函数中使用Ajax获取的值作为函数的返回值,结果无法获取到返回值 原因:ajax默认使用异步方式,要将异步改为同步方式 案例:通过区域ID,获取该区域下所有的学校 var ...

  2. [Jacky] 解决Ext.Net GridPanel 选择的行数据刷新后不能获取最新值

    选择GridPanel中一行数据,当变更数据时并重新刷新之后不能获取最新值,需通过如下方式获取: var internalId = gridPanel.getSelectionModel().getL ...

  3. 我的Android进阶之旅------>解决Jackson、Gson解析Json数据时,Json数据中的Key为Java关键字时解析为null的问题

    1.问题描述 首先,需要解析的Json数据类似于下面的格式,但是包含了Java关键字abstract: { ret: 0, msg: "normal return.", news: ...

  4. shopnc 导出Excel数据问题实例 && ajax 获取当前值并传递

    任务:从商家中心导出数据,各个商品所属情况. 商品导出到Excel文件功能 /导出exel 功能make-in-lemon public function createExcelOp(){ $mode ...

  5. HtmlAgilityPack中使用xpath获取属性值

    HtmlAgilityPack介绍 HtmlAgilityPack是一个专门用来解析Html的库,它可以使用xml的方式来解析html. 有人说了,html本身不就是xml?是的,html就是xml, ...

  6. JavaScript中获取Map集合中的key和value值(前提是:既不知道key为什么值,也不知道value有哪些值)

    for(var i in maps){//通过定义一个局部变量i遍历获取map里面的所有key值 alert(maps[i]); //通过获取key对应的value值 }

  7. mysql 多条数据中,分组获取值最大的数据记录

    摘要: 多条纪录中,几个字段相同,但是其中一个或者多个字段不同,则去该字段最大(这里只有一个不同) 源数据: 目的是移除:在同一天中只能存在一天数据,则取审核日期最大,数据库脚本如下: SELECT ...

  8. 在JavaScript中获取Map集合中的key和value值(前提是:既不知道key为什么值,也不知道value有哪些值)

  9. 在java中获取Map集合中的key和value值

随机推荐

  1. 用户USER_HZ与内核HZ的值

    HZ和Jiffies系统定时器timer能够以可编程的方式设定频率,来中断cpu处理器.此频率即hz,为每秒的定时器节拍(tick)数, 对应着内核变量HZ.选择合适的HZ值需要权衡. tick为两个 ...

  2. RFC 标准文档

    RFC 标准文档 什么是 RFC ? RFC(Request For Comments)意即"请求评论",包含了关于Internet的几乎所有重要的文字资料.如果你想成为网络方面的 ...

  3. 1.Docker容器学习之新生入门必备基础知识

    0x00 Docker 快速入门 1.基础介绍 描述:Docker [ˈdɑ:kə(r)] 是一个基于Go语言开发实现的遵循Apache 2.0协议开源项目,目标是实现轻量级的操作系统虚拟化解决方案: ...

  4. Python学习阵痛期

    Python和之前学习的Java语法上有较大的区别,例如Java中for循环常使用++自增符,在Python中是没有++的. 因为Python中整型.字符型等都是不可变的,一改变值就重新分配了新的内存 ...

  5. 原生的ajax请求

    原生ajax请求的步骤: get 请求: 1,创建一个xhr变量 var xhr=new XMhttpRequest(); 2,设置请求方式和请求地址 xhr.open('url','http//19 ...

  6. DjangoRestFramework框架三种分页功能的实现 - 在DjangoStarter项目模板中封装

    前言 继续Django后端开发系列文章.刚好遇到一个分页的需求,就记录一下. Django作为一个"全家桶"型的框架,本身啥都有,分页组件也是有的,但默认的分页组件没有对API开发 ...

  7. 2021-ACM-ICPC-济南站 K Search For Mafuyu 【树的遍历与回溯,dfs, 邻接表】

    PAT 题目详情 (pintia.cn) 题目 题意描述 n个房间, 有n-1个通道, kanade初始在1,Mafuyu 位置未知,求K到M的最小期望,也就是到每个地方的平均值,注意的是这里的求法, ...

  8. HCNP Routing&Switching之组播技术PIM-SM 稀疏模式

    前文我们了解了组播路由协议PIM以及PIM-DM密集模式相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16084310.html:今天我们来聊一聊PI ...

  9. IDEA小技巧:Markdown里的命令行可以直接运行了

    作为一名开发者,相信大部分人都喜欢用Markdown来写文章和写文档. 如果你经常用开源项目或者自己维护开源项目,肯定对于项目下的README文件也相当熟悉了吧,通常我们会在这里介绍项目的功能.如何使 ...

  10. [ Perl ] 多线程并发编程

    https://www.cnblogs.com/yeungchie/ 记录一些常用的 模块 / 方法 . 多线程 使用模块 threads use 5.010; use threads; sub fu ...