jsonObject转map_java 对象转map

jsonObject转map_java 对象转map直接上代码,实现了对嵌套的对象进行转换。privateMap<String,Object>toMap(JSONObjectobject){Map<String,Object>map=newHashMap<String,Object>();Objectvalue;Stringkey;for(Iterator<?&

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

直接上代码,实现了对嵌套的对象进行转换。

private Map<String, Object> toMap(JSONObject object) {

Map<String, Object> map = new HashMap<String, Object>();
Object value;
String key;
for (Iterator<?> it = object.keys(); it.hasNext() ; ) {

key = (String) it.next();
if (object.isNull(key)) {

map.put(key, null);
} else {

try {

value = object.get(key);
if (value instanceof JSONArray) {

value = toList((JSONArray) value);
} else if (value instanceof JSONObject) {

value = toMap((JSONObject) value);
}
map.put(key, value);
} catch (JSONException e) {

logger.debug(e.getMessage(), e);
}
}
}
return map;
}

private List toList(JSONArray array) {

List list = new ArrayList();
Object value;
for (int i = 0; i < array.length(); i++) {

try {

value = array.get(i);
if (value instanceof JSONArray) {

value = toList((JSONArray) value);
} else if (value instanceof JSONObject) {

value = toMap((JSONObject) value);
}
list.add(value);
} catch (JSONException e) {

logger.debug(e.getMessage(), e);
}
}
return list;
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/172463.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python py2exe_编写简单网页

    python py2exe_编写简单网页简介py2exe是 Python Distutils 的一个外部扩展,它可以把Python脚本转为可执行的Windows程序,无需安装Python即可运行.你可以在主页 SourceForge 得到更多资源. 说明py2exe可以把Python程序转为包,能够在其他没有安装Python 的电脑上运行。Pythonisneede

    2022年9月4日
    3
  • java 转为Calendar_java Calendar和Date()的转化

    java 转为Calendar_java Calendar和Date()的转化在使用过程中发现,publicstaticvoidmain(Stringargs[]){Datedate=newDate();System.out.println(date.getYear();}输出结果为:114而且getYear()方法已经不再建议使用。于是想到Calendar。正确方式为:publicstaticvoidmain(Stringargs[]){Da…

    2022年6月7日
    51
  • L. Digit sum (ICPC 2019 上海网络赛)

    L. Digit sum (ICPC 2019 上海网络赛)

    2021年9月28日
    53
  • Idea激活码最新教程2021.2.4版本,永久有效激活码,亲测可用,记得收藏

    Idea激活码最新教程2021.2.4版本,永久有效激活码,亲测可用,记得收藏Idea 激活码教程永久有效 2021 2 4 激活码教程 Windows 版永久激活 持续更新 Idea 激活码 2021 2 4 成功激活

    2025年5月22日
    1
  • 利用python打开别人手机摄像头_python 摄像头

    利用python打开别人手机摄像头_python 摄像头前言今天这个案例,就是控制自己的摄像头拍照,并且把拍下来的照片,通过邮件发到自己的邮箱里。想完成今天的这个案例,只要记住一个重点:你需要一个摄像头思路通过opencv调用摄像头拍照保存图像本地用email库构造邮件内容,保存的图像以附件形式插入邮件内容用smtplib库发送邮件到指定邮箱开始代码工具导入importtimeimportcv2#pipinstallopencv-python-i镜像源网址fromemail.mime.imageimport

    2022年8月12日
    6
  • C语言指针函数和函数指针区别

    C语言指针函数和函数指针区别C语言函数指针和指针函数的区别C和C++中经常会用到指针,和数据项一样,函数也是有地址的,函数的地址是存储其机器语言代码的内存的开始地址。指针函数和函数指针经常会混淆,一个是返回指针的函数,另一个是指向函数的指针,下面就分别解释指针函数和函数指针的区别。一、指针函数指针函数是返回指针的函数主体是函数,返回值是一个指针基本声明形式:返回数据类型+*+函数名+(变量类型1,……

    2022年6月22日
    18

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号