详解Java中String JSONObject JSONArray List转换


Posted in Javascript onNovember 13, 2020

JSON使用阿里的fastJson为依赖包

gradle依赖管理如下:

compile group: 'com.alibaba', name: 'fastjson', version:'1.2.41'

1、String转JSONObject

前言:String 是JSONObject格式的字符串

eg:详解Java中String JSONObject JSONArray List转换

JSONObject jSONObject = JSONObject.parseObject(String);

2、String转JSONArray

前言:String 是JSONArray格式的字符串

eg:详解Java中String JSONObject JSONArray List转换

JSONArray jsonArray= JSONArray.parseArray(String);

3、JSONObject中的数组提取为JSONArray

eg:

{
  "AreaName": "北京",
  "CityId": 110100,
  "NoMarket": false,
  "OldCityId": 646,
  "Pinyin": "beijing",
  "ProvinceId": 110000,
  "Result": [
    {
      "ItemName": "优惠",
      "ItemUrl": "/list/a646c12-1.html",
      "Title": "Stelvio 钜惠23.4万起",
      "Url": "//www.autohome.com.cn/market/201904/100223763.html"
    },
    {
      "ItemName": "优惠",
      "ItemUrl": "/list/a646c12-1.html",
      "Title": "马驹桥林肯中心年中大促",
      "Url": "//www.autohome.com.cn/market/201906/100230932.html"
    },
    {
      "ItemName": "优惠",
      "ItemUrl": "/list/a646c12-1.html",
      "Title": "星越平价销售13.58万元起",
      "Url": "//www.autohome.com.cn/dealer/201906/367011492.html"
    },
    {
      "ItemName": "优惠",
      "ItemUrl": "/list/a646c12-1.html",
      "Title": "哈弗F5限时优惠8000元",
      "Url": "//www.autohome.com.cn/dealer/201906/366897778.html"
    },
    {
      "ItemName": "优惠",
      "ItemUrl": "/list/a646c12-1.html",
      "Title": "购元新能源价格暂无优惠",
      "Url": "//www.autohome.com.cn/dealer/201906/366897034.html"
    },
    {
      "ItemName": "优惠",
      "ItemUrl": "/list/a646c12-1.html",
      "Title": "瑞虎3xe冰点价促销中!",
      "Url": "//www.autohome.com.cn/dealer/201906/366889724.html"
    },
    {
      "ItemName": "优惠",
      "ItemUrl": "/list/a646c12-1.html",
      "Title": "购奔奔EV现钜惠5.1万元",
      "Url": "//www.autohome.com.cn/dealer/201906/366843204.html"
    },
    {
      "ItemName": "优惠",
      "ItemUrl": "/list/a646c12-1.html",
      "Title": "购宝马7系价格暂无优惠",
      "Url": "//www.autohome.com.cn/dealer/201906/366588080.html"
    },
    {
      "ItemName": "预定",
      "ItemUrl": "/list/a646c14-1.html",
      "Title": "途观L价格直降7.6万元",
      "Url": "//www.autohome.com.cn/dealer/201906/366568937.html"
    },
    {
      "ItemName": "预定",
      "ItemUrl": "/list/a646c14-1.html",
      "Title": "购凯迪拉克XTS降8万",
      "Url": "//www.autohome.com.cn/dealer/201906/366500646.html"
    },
    {
      "ItemName": "预定",
      "ItemUrl": "/list/a646c14-1.html",
      "Title": "汉兰达可试驾购车无优惠",
      "Url": "//www.autohome.com.cn/dealer/201906/366384207.html"
    },
    {
      "ItemName": "预定",
      "ItemUrl": "/list/a646c14-1.html",
      "Title": "宝马M4价格稳定无优惠",
      "Url": "//www.autohome.com.cn/dealer/201906/366156789.html"
    },
    {
      "ItemName": "预定",
      "ItemUrl": "/list/a646c14-1.html",
      "Title": "奥迪A8促销直降26.33万元",
      "Url": "//www.autohome.com.cn/dealer/201906/366925378.html"
    },
    {
      "ItemName": "预定",
      "ItemUrl": "/list/a646c14-1.html",
      "Title": "英菲尼迪Q50L可降6.3万",
      "Url": "//www.autohome.com.cn/dealer/201906/366863516.html"
    },
    {
      "ItemName": "预定",
      "ItemUrl": "/list/a646c14-1.html",
      "Title": "帝豪新能源价格降8.25万",
      "Url": "//www.autohome.com.cn/dealer/201906/366877669.html"
    },
    {
      "ItemName": "预定",
      "ItemUrl": "/list/a646c14-1.html",
      "Title": "撼路者在售现钜惠5万",
      "Url": "//www.autohome.com.cn/dealer/201906/366912121.html"
    }
  ]
}

详解Java中String JSONObject JSONArray List转换

提取Result对应的数组

JSONArray jsonArray= jsonObject.getJSONArray("Result");

4、JSONArray提取为JSONObject

eg:

详解Java中String JSONObject JSONArray List转换

JSONObject jsonObject = jsonArray.getJSONObject(0);

5、JSONObject获取value

1、object.getString("key")

2、object.get("key")

6、获取JSONObject的ket value

JSONArray dateArr = new JSONArray();
    Set<String> key = dateArr .keySet();
    for (String keyObj:key) {
      JSONArray hisData = history.getJSONArray(keyObj);      
    }

7、遍历JSONArray

第一种for循环
        JSONArray seriesArr = new JSONArray();
        for(int i=0;i<seriesArr .size();i++){
          JSONObject object = eggsArr.getJSONObject(i);
        }


第二种for增强
        JSONArray pzListArr = new JSONArray();
        for (Object obj:pzListArr) {
          JSONObject dataObj = JSONObject.parseObject(obj.toString());
        }

8、

Map<String, Object> paraMap = new HashMap<String, Object>();

JSONObject.toJSONString(paraMap)

自动过滤参数为null的数值

8、javaBean转为JSONObject

未完待续······

9、List<实体类>转String

import com.alibaba.fastjson.JSONObject;


List<实体类> value1 = 。。。。。。
JSONObject.toJSONString(value1 )10、JSONArray转List<实体类>

详解Java中String JSONObject JSONArray List转换

看你开心用哪个,object和array的区别没有细究

10、JSONArray转List<实体类>

import com.alibaba.fastjson.JSONArray;
JSONArray objects = JSONArray.parseArray(categoryConstantInfoFromRedis);
List<实体类> categoryConstantInfos = objects.toJavaList(实体类名.class);
众里寻他千百度!!!toJavaList

详解Java中String JSONObject JSONArray List转换

找不到方法的时候,去看看JSONArray,JSONObject的源码,很多都有封装好的,你不会失望的

到此这篇关于详解Java中String JSONObject JSONArray List<实体类>转换的文章就介绍到这了,更多相关String JSONObject JSONArray List<实体类>转换 内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
原生javascript和jquery判断浏览器版本等信息
Jul 04 Javascript
js图片预加载示例
Apr 30 Javascript
jQuery中的pushStack实现原理和应用实例
Feb 03 Javascript
jquery按回车键实现表单提交的简单实例
May 25 Javascript
js面向对象编程总结
Feb 16 Javascript
js实现PC端根据IP定位当前城市地理位置
Feb 22 Javascript
原生JavaScript实现的简单省市县三级联动功能示例
May 27 Javascript
Axios学习笔记之使用方法教程
Jul 21 Javascript
理解 Node.js 事件驱动机制的原理
Aug 16 Javascript
js中apply和Math.max()函数的问题及区别介绍
Mar 27 Javascript
D3.js的基础部分之数组的处理数组的排序和求值(v3版本)
May 09 Javascript
layui.tree组件的使用以及搜索节点功能的实现
Sep 26 Javascript
vue print.js打印支持Echarts图表操作
Nov 13 #Javascript
vue 中使用print.js导出pdf操作
Nov 13 #Javascript
详解vue中在父组件点击按钮触发子组件的事件
Nov 13 #Javascript
Vue中nprogress页面加载进度条的方法实现
Nov 13 #Javascript
解决vue打包 npm run build-test突然不动了的问题
Nov 13 #Javascript
vue封装自定义指令之动态显示title操作(溢出显示,不溢出不显示)
Nov 12 #Javascript
解决vuex刷新数据消失问题
Nov 12 #Javascript
You might like
php仿QQ验证码的实例分析
2013/07/01 PHP
PHP strip_tags()去除HTML、XML以及PHP的标签介绍
2014/02/18 PHP
php设计模式之命令模式使用示例
2014/03/02 PHP
php 遍历目录,生成目录下每个文件的md5值并写入到结果文件中
2016/12/12 PHP
ThinkPHP实现图片上传操作的方法详解
2017/05/08 PHP
PHP abstract 抽象类定义与用法示例
2018/05/29 PHP
jQuery 工具函数学习资料
2010/04/29 Javascript
javascript window.confirm确认 取消对话框实现代码小结
2012/10/21 Javascript
javascript获取隐藏dom的宽高 具体实现
2013/07/14 Javascript
js实现头像图片切割缩放及无刷新上传图片的方法
2015/07/17 Javascript
js贪吃蛇网页版游戏特效代码分享(挑战十关)
2015/08/24 Javascript
jquery+json实现分页效果
2016/03/07 Javascript
仅一个form表单 js实现注册信息依次填写提交功能
2016/06/12 Javascript
DOM事件探秘篇
2017/02/15 Javascript
node.js 中间件express-session使用详解
2017/05/20 Javascript
深入理解react-router@4.0 使用和源码解析
2017/05/23 Javascript
setTimeout时间设置为0详细解析
2018/03/13 Javascript
iView框架问题整理小结
2018/10/16 Javascript
python使用xmlrpc实例讲解
2013/12/17 Python
基于python实现在excel中读取与生成随机数写入excel中
2018/01/04 Python
详解Python对JSON中的特殊类型进行Encoder
2019/07/15 Python
python实现银行管理系统
2019/10/25 Python
Python写出新冠状病毒确诊人数地图的方法
2020/02/12 Python
Python tkinter 下拉日历控件代码
2020/03/04 Python
Keras 使用 Lambda层详解
2020/06/10 Python
Django crontab定时任务模块操作方法解析
2020/09/10 Python
学生会部长竞聘书
2014/03/31 职场文书
青年志愿者先进事迹
2014/05/06 职场文书
计算机应用专业自荐信
2014/07/05 职场文书
优秀班集体事迹材料
2014/12/25 职场文书
保险内勤岗位职责
2015/04/13 职场文书
社区敬老月活动总结
2015/05/07 职场文书
百年孤独读书笔记
2015/06/29 职场文书
2016年教师师德师风心得体会
2016/01/12 职场文书
《给予树》教学反思
2016/03/03 职场文书
Python3 类型标注支持操作
2021/06/02 Python