Java list转为object_List集合转JSONObject
写代码喜欢用Map拼接返回去给前端,这样得到的也是一个标准的JSON,今天先不说Map的优缺点,我们就来说说JSONObject的使用,我用的是阿里的fastjson,先上代码,当我们需要嵌套代码的时候,看需求:
由于sessionData后面是{},所以后面的对象必须是一个JSONObject,如果是sessionData后面是[]就可以使用JSONArray。一般sessionDataExpires,sessionDataKey,sessionDataValue字段都是从缓存或数据库中查出来的,我们查出来的数据都习惯用List去接收,那么问题就来了,List对象怎么转成JSONObject呢?由于我翻了百度好几页都没有我想要的答案,所以才有了这篇博客。
要知道List对象怎么转成JSONObject,我们直接来看源码即可,在idea中把所有JSONObject的方法都.出来:
在所有方法中,我们很容易看到哪些方法是返回了一个JSONObject的,而这个方法正是我们需要的,我们先看到parseObject这个方法,他返回的就是一个JSONObject
找到了parseObject方法,但是问题又来了,我们的参数是List,但是parseObject方法接收的参数是一个String类型(这个Stirng是JSON格式的String,不能任意写)。那我们就继续点(.)方法,再找我们需要的方法:
这里我们可以看到toJSONString方法,传入要给Objec对象,就能得到一个String类型的结果,由于一切对象,不管是List ,Map还是其他对象,都属于Object对象,所以我们就可以使用toJSONString这个方法来满足我们的要求,最后看一下代码:
1 List list = new ArrayList(16);
2 JSONObject result = JSONObject.parseObject(JSONObject.toJSONString(list));
这里我们得到的result就是一个JSONObject格式的数据了,最后在通过一个JSONObject来拼接,就能得到我们的最终效果了,看代码:
1 List list = new ArrayList(16);
2 JSONObject result = JSONObject.parseObject(JSONObject.toJSONString(list));
3 JSONObject data = new JSONObject();
4 data.put("allMenuList",result);
写到这里,我只能说真香!顺带说一句,这里主要是理解怎么通过idea把方法都列出来,并找到自己想要的方法,这就是别人不用看源码就能很快上手一门技术的原因之一,只要看懂对象里面有什么方法,哪些是你需要用到的方法,你就离大神又进一步了。
Java list转为object_List集合转JSONObject相关推荐
- JAVA对象集合转化为xml转换_xml转为Map集合以及对象转化为xml
1.[代码][Java]代码 package com.fang.util; import java.io.InputStream; import java.util.HashMap; import j ...
- java.lang.ClassCastException: cn.hutool.json.JSONObject cannot be cast toXXXX
java.lang.ClassCastException: cn.hutool.json.JSONObject cannot be cast toXXXX 除了网上常见解决方案以外,也存在另一种可能导 ...
- Java中遍历Map集合的5种方式总结
这篇文章主要给大家介绍了关于Java中遍历Map集合的5种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值. 方式一 通过Map.keySet使用iterator遍历 ...
- java.lang.ClassCastException: com.alibaba.fastjson.JSONObject cannot be cast to com.xx.xx.xx.xx.Acce
java.lang.ClassCastException: com.alibaba.fastjson.JSONObject cannot be cast to com.xx.xx.xx.xx.Acce ...
- 【JAVA知识梳理】集合总结!
活动地址:CSDN21天学习挑战赛 本文已收录于专栏 ⭐️ <java 知识梳理>⭐️ 集合 集合体系图 单列集合: Collection 的子接口下的 List 和 Set 的实现子类均 ...
- java不同对象的集合拷贝_集合java对象
JAVA基础教程汇总 到这一篇博客为止,JAVA的基础部分已经介绍完了,这一篇为基础部分的汇总. JAVA介绍 JAVA概述 Java的特点 JDK/bin目录下的不同exe文件的用途 JAVA环境变 ...
- Java基础知识第二讲:Java开发手册/JVM/集合框架/异常体系/Java反射/语法知识/Java IO
Java基础知识第二讲(Java编程规范/JVM/集合框架/异常体系/Java反射/语法知识/Java IO/码出高效) 分享在java学习及工作中,常使用的一些基础知识,本文从JVM出发,讲解了JV ...
- [转]Java中常用的集合—初学者的你不可错过的精编整理
集合一直都是项目中非常常见的,我是一个Android开发者,集合对于我来说,在项目中使用的次数非常之多,因为使用的多,熟能生巧,所以这里呢!就给那些初学者整理一下Java当中常用的集合吧! 因为 ...
- Java 8中处理集合的优雅姿势——Stream
在Java中,集合和数组是我们经常会用到的数据结构,需要经常对他们做增.删.改.查.聚合.统计.过滤等操作.相比之下,关系型数据库中也同样有这些操作,但是在Java 8之前,集合和数组的处理并不是很便 ...
最新文章
- 关于consistent hash的思考及改进方案
- 带命令行参数的main函数的误解[到处转载的垃圾]
- 新茶饮“降价内卷”的尽头,是供应链?
- DSP using MATLAB 示例Example3.1 3.2 3.3
- C 11实现的100行线程池
- c语言对字符串逆序,【C语言】 字符串逆序
- 2019.03.21 创建表 一对多,一对一,多对多。
- ESP32-cam 初体验 从esp32-cam的购买到局域网监控的实现
- SAP物料编码- -
- Xshell 7官网免费版下载与安装(详细教程)
- 计算机网络重点知识整理(自顶向下)
- 文本特征提取之TF-IDF算法(原理+Python代码)
- 《当程序员的那些狗日日子》六
- 利用python实现m4a格式到MP3的转换
- coreldraw怎么打印荣誉证书_CorelDraw如何批量打印证书
- 前端input操作,修改光标颜色,去除背景色
- pytorch应用之——纸币识别(一)
- air flow空调上是什么意思_air flow空调滤芯上是什么意思
- 蔡徐坤1亿转发量幕后推手“星援app”被端
- android studio单选按钮,在Android Studio中设置默认单选按钮