公司项目用的IBM封装的json解析,此处采用阿里的fastjson进行演示,代码如下:

 package com.alphajuns.test;

 import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import org.junit.Test; import java.util.Map; /**
* @ClassName JsonToMapTest
* @Description
* @Author AlphaJunS
* @Date 2019/10/23 22:34
* @Version V1.0
**/
public class JsonToMapTest { /**
* @description json字符串转json数组
* @author AlphaJunS
* @date 2019/10/23
* @param []
* @return void
*/
@Test
public void run3() {
// json字符串
String jsonStr = "[{\"ID\":\"SX5-1001432\",\"PROCESSID\":\"OP2080\"}, "
+ "{\"ID\":\"SX5-1601110\",\"PROCESSID\":\"OP2150\"}, "
+ "{\"ID\":\"X03004-1023111\",\"PROCESSID\":\"OP1140\"}, "
+ "{\"ID\":\"X03004-1003012\",\"PROCESSID\":\"GOP260\"}, "
+ "{\"ID\":\"7903075118\",\"PROCESSID\":\"GOP260\"},{\"ID\":\"13MA-11011\"}]";
JSONArray jsonArray = JSON.parseArray(jsonStr);
// 遍历打印
printMethod(jsonArray);
} /**
* @description
* @author AlphaJunS
* @date 2019/10/23
* @param []
* @return void
*/
@Test
public void run2() {
// json字符串
String jsonStr = "{\"OPERATION\":[{\"ID\":\"SX5-1001432\",\"PROCESSID\":\"OP2080\"}, "
+ "{\"ID\":\"SX5-1601110\",\"PROCESSID\":\"OP2150\"}, "
+ "{\"ID\":\"X03004-1023111\",\"PROCESSID\":\"OP1140\"}, "
+ "{\"ID\":\"X03004-1003012\",\"PROCESSID\":\"GOP260\"}, "
+ "{\"ID\":\"7903075118\",\"PROCESSID\":\"GOP260\"},{\"ID\":\"13MA-11011\"}]}"; // json转map
Map map = (Map) JSON.parse(jsonStr);
System.out.println("map的value类型:" + map.get("OPERATION").getClass());
JSONArray jsonArray = (JSONArray) map.get("OPERATION");
printMethod(jsonArray);
} /**
* @description json字符串转map
* @author AlphaJunS
* @date 2019/10/23
* @param []
* @return void
*/
@Test
public void run1() {
String jsonStr= "{\"OPERATION\":{\"ID\":\"SX5-1001432\",\"PROCESSID\":\"OP2080\"}}";
// json转map
Map map = (Map) JSON.parse(jsonStr);
System.out.println("map的value类型:" + map.get("OPERATION").getClass());
JSONObject jsonObject = (JSONObject) map.get("OPERATION");
System.out.println("ID:" + jsonObject.get("ID") + ",PROCESSID:" + jsonObject.get("PROCESSID"));
} /**
* @description 遍历json数组打印
* @author AlphaJunS
* @date 2019/10/23
* @param [jsonArray]
* @return void
*/
public void printMethod(JSONArray jsonArray) {
// 遍历json数组
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject jsonObject = (JSONObject) jsonArray.get(i);
System.out.println("第" + (i + 1) + "个对象:");
System.out.println("ID:" + jsonObject.get("ID") + ",PROCESSID:" + jsonObject.get("PROCESSID"));
}
}
}

json字符串转map、json数组演示的更多相关文章

  1. json字符串转map

    <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</ar ...

  2. JSON字符串与Map互转

    //一.map转为json字符串 public static String map2jsonstr(Map<String,?> map){ return JSONObject.toJSON ...

  3. json字符串转换成json对象,json对象转换成字符串,值转换成字符串,字符串转成值

    一.json相关概念 json,全称为javascript object notation,是一种轻量级的数据交互格式.采用完全独立于语言的文本格式,是一种理想的数据交换格式. 同时,json是jav ...

  4. VBScript把json字符串解析成json对象的2个方法

    这篇文章主要介绍了VBScript把json字符串解析成json对象的2个方法,本文通过MSScriptControl.ScriptControl和jscript实现,需要的朋友可以参考下 asp/v ...

  5. HttpServletResponse 返回的json数据不是json字符串,而是json对象

    今天在改一个bug 情况: 在spring boot中写了一个类Result ,用来统一封装 各个API响应结果 , 其中重写了toString()方法来返回 json字符串 . 在正常情况下,从其它 ...

  6. json字符串转成 json对象 json对象转换成java对象

    import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSONObject; 依赖包 <dependency> ...

  7. js将json字符串转化成json对象的方法

    js将json字符串转化成json对象的方法: JSON.parse(jsonObject)

  8. nodejs将JSON字符串转化为JSON对象

    如何将JSON字符串转化为JSON对象? JSON.parse(str)       JSON是javascript的一个内置对象,提供了转换JSON对象与字符串互相转换的方法: 问题来了,道理我都懂 ...

  9. 特殊字符导致json字符串转换成json对象出错

    在对数据库取出来的数据(特别是描述信息)里面含有特殊字符的话,使用JSON.parse将json字符串转换成json对象的时候会出错,主要是双引号,回车换行等影响明显,左尖括号和右尖括号也会导致显示问 ...

随机推荐

  1. 浅入深出Vue:文章编辑

    登录与注册功能都已经实现,现在是时候来开发文章编辑功能了. 这里咱们就使用 markdown 作为编辑语言吧,简洁通用.那么我们就需要找一下 markdown 的编辑器组件了,而且还要支持 vue噢. ...

  2. 集合(七) Set—HashSet,TreeSet和LinkedHashSet

    四.Set Set和List一样,也是继承Collection的接口,但Set是不包含重复元素的集合.由于先啃下Map,Set的难度将会大幅减小.因为Set基本上都是以Map为基础实现的,例如两个主要 ...

  3. 内置对象-Math

    1.随机数 Math.random() 1)获得0-1之间的随机数 2)0到100:Math.round(Math.random()*100) 2.max:求最大值 ,,,) console.log( ...

  4. 12-SSMS图形化工具中不允许保存修改的解决办法

    1.报出的警告 2.解决办法 工具-->选项-->设计器--->表设计和数据库设计器-->阻止保存要求重新创建表的更改  的勾去掉就OK 了

  5. [人物存档]【AI少女】【捏脸数据】日式校服

    点击下载(城通网盘):AISChaF_20191031221657757.png 点击下载(城通网盘):1572457456165c77.zip

  6. 【Python之路】特别篇--Python正则表达式

    正则表达式的基础 正则表达式并不是Python的一部分. 正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大. 得益于这一点 ...

  7. [Docker]docker搭建私有仓库(ssl、身份认证)

    docker搭建私有仓库(ssl.身份认证) 环境:CentOS 7.Docker 1.13.1 CentOS 7相关: https://www.cnblogs.com/ttkl/p/11041124 ...

  8. 微信小程序开发入门教程(一)---hello world

    由于无法备案网站,前期做了个微信小程序(开发版)就搁置了,几乎忘了开发过程.现在重新梳理,做个记录. 一.最基本的小程序前端例子hello 1.下载安装  微信开发者工具  官网: https://d ...

  9. Confluence 6.15 修改历史(Change-History)宏

    修改历史(Change-History)宏显示了页面一个的更新历史:版本号,作者,日期和备注.这些内容将会在同一栏中进行显示. 屏幕截图:Confluence 中的修改历史(Change-Histor ...

  10. 微信小程序_(组件)view视图容器

    微信小程序view组件官方文档 传送门 Learn 一.hover-class属性 二.hover-start-time与hover-stay-time属性 三.hover-stop-propagat ...