public static void main(String[] args) {
List list = new ArrayList<>(); HashMap map = new HashMap<String,Object>();
map.put("name", "zhou");
map.put("age", 20);
map.put("Address", "hubei");
map.put("career", "student");
list.add(map); HashMap map1 = new HashMap<String,Object>();
map1.put("name", "zhangsan");
map1.put("age", 30);
map.put("Address", "wuhan");
map.put("career", "teacher");
list.add(map1); System.out.println(list);
JSONArray result = JSONArray.fromObject(list); List<Person> jsonDtosList = (List<Person>) JSONArray.toCollection(result, Person.class); System.out.println(jsonDtosList);

net.sf.json.JSONArray;    的

JSONArray.fromObject(list);  可以把 包含 hashMap 的 List 转化成
JSONArray  (每一个元素是 JSONObject), 
List<Person> jsonDtosList = (List<Person>) JSONArray.toCollection(result, Person.class); 把
JSONArray 转化成 对象数组。
对象的构造函数必须是默认的无参构造函数。对象中没有的字段都是 null
package stream;

public class Person {
private String name;
private int age;
private String address; public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public int getAge() {
return age;
} public void setAge(int age) {
this.age = age;
} public String getAddress() {
return address;
} public void setAddress(String address) {
this.address = address;
} /*
* public Person(String name, int age) {
*
* this.name = name; this.age = age; }
*/ }
一: HashMap 直接转化成 JSONObject:
       map.put("title",title);
map.put("content",text);
       net.sf.json.JSONObject jsonObject= JSONObject.fromObject(map);
二:HashMap 直接转化成 JSONObject:
map.put("title",title);
map.put("content",text);
com.alibaba.fastjson.JSONObject.JSONObject jsonObject= JSONObject.parseObject(JSON.toJSONString(map));

三: 使用  hutool 包的 JSONObject 可以把 json形式的字符串转化成 JSONObject 对象,此对象中每一个元素都是HashMap 对象,可以使用 map.putAll 保存到HashMap中。
并且 可以使用jsonObject.get(String key) 来获取元素。
        String strq="{\"pfid\":\"1164806502843756545\",\"nickName\":\"杨老师\"}";
cn.hutool.json.JSONObject jsonObject = cn.hutool.json.JSONUtil.parseObj(strq);
Map<String, Object> data = new HashMap<String, Object>();
data.putAll(jsonObject); System.out.println(data);
System.out.println(data.get("pfid"));
String nickName = (String) jsonObject.get("nickName");
System.out.println(nickName);

HashMap ArrayList 和 List对象的转换的更多相关文章

  1. 使用XStream是实现XML与Java对象的转换(6)--持久化

    九.持久化 在第八节的示例中,当我们操作一组对象时,我们可以指定Writer.OutputStream来写出序列化后的XML数据,我们还可以指定Reader.InputStream来读取序列化后的XM ...

  2. 使用PageHelper插件分页时,如何对对象进行转换以及添加属性

    一.插件介绍 PageHelper是针对Mybaits的分页插件,支持任何复杂的单表.多表分页. 二.基本用法 以springboot为例,有两种方式配置,一种是传统的,引入依赖,编写配置类:一种是使 ...

  3. C#中对象,字符串,dataTable、DataReader、DataSet,对象集合转换成Json字符串方法。

    C#中对象,字符串,dataTable.DataReader.DataSet,对象集合转换成Json字符串方法. public class ConvertJson { #region 私有方法 /// ...

  4. jQuery介绍 DOM对象和jQuery对象的转换与区别

    jQuery介绍 DOM对象和jQuery对象的转换与区别 jQuery介绍      jQuery: http://jquery.com/      write less, do more.   j ...

  5. jQuery对象与dom对象的转换

    一直以来对于通过jQuery方式获取的对象使不能直接使用JavaScript的一些方法的,开始的时候不理解,现在此案知道,原来jQuery获得的对象并不和我们平时使用getElementById获得的 ...

  6. 如何将PHP对象数组转换成普通数组

    /** * 对象数组转为普通数组 * * AJAX提交到后台的JSON字串经decode解码后为一个对象数组, * 为此必须转为普通数组后才能进行后续处理, * 此函数支持多维数组处理. * * @p ...

  7. JSON转换类(二)--List转换成Json、对象集合转换Json等

    #region List转换成Json /// <summary> /// List转换成Json /// </summary> public static string Li ...

  8. java 16 -11 ArrayList存储自定义对象并增强for遍历

    需求:ArrayList存储自定义对象并遍历.要求加入泛型,并用增强for遍历. A:迭代器 B:普通for     C:增强for LinkedList,Vector,Colleciton,List ...

  9. List转换成Json、对象集合转换Json等

    #region List转换成Json /// <summary> /// List转换成Json /// </summary> public static string Li ...

随机推荐

  1. 解决Python中出现的问题: “You are using pip version 9.0.1, however version 19.2.3 is available. You should consider upgrading via the 'python -m pip install --upgrade pip' command.”

    1. 一开始我在使用Pycharm时,导入numpy库,发现导入错误: Non-zero exit code (1) 2. 于是我通过更新的方法来解决,哪知道在更新的时候也出现了错误,错误如下图: 这 ...

  2. string::copy

    size_t copy (char* s, size_t len, size_t pos = 0) const;功能:把string的pos位置开始的len字节copy到s注意:s的最后要手动添加字符 ...

  3. 为什么说Redis是单线程的以及Redis为什么这么块

    一.前言 近乎所有与Java相关的面试都会问到缓存的问题,基础一点的会问到什么是“二八定律”.什么是“热数据和冷数据”,复杂一点的会问到缓存雪崩.缓存穿透.缓存预热.缓存更新.缓存降级等问题,这些看似 ...

  4. Xftp6 和 Xshell 6 下载与安装使用

    官网地址:https://www.netsarang.com/zh/all-downloads/ 然后进行安装吧,基本没有什么配置. 打开 xftp 连接 Linux,进行文件操作. 然后 名称:随意 ...

  5. Oracle 11 安装 提示环境不满足最低要求解决方案

    在 Oracle 安装包 中,找到 stage 文件夹 切入,再找到 cvu 文件夹,找到 cvu_prereq.xml 文件 ,进行编辑 新增 这一块内容. <OPERATING_SYSTEM ...

  6. [MySQL优化] -- 如何查找SQL效率地下的原因

    [MySQL优化] -- 如何查找SQL效率地下的原因   来源: ChinaUnix博客 日期: 2009.07.20 16:12 (共有条评论) 我要评论       查询到效率低的 SQL 语句 ...

  7. struts2提交表单注意事项 (3)

    供应商模块 需求:实现供应商的列表.添加.修改.删除三个功能 注意:修改时,不允许修改供应商编号 添加时,不允许显现的添加供应商编号 删除时,进行逻辑删除(根据主键将该条数据不再显示在列表) 物理删除 ...

  8. 埋点(Event Tracking)vs 无埋点(Codeless Tracking) vs 可视化埋点(Visual Event Tracking)

    在理解什么是埋点之前,首先需要了解一些基础知识:(以下摘自:http://www.chinawebanalytics.cn/auto-event-tracking-good-bad-ugly/) 我们 ...

  9. .net core 反编译一小段

    public static class A { private static readonly MethodInfo GetServiceInfo; public static IApplicatio ...

  10. delphi将字符串转换成stringlist

    function StrToList(const sString, Token: string): TStringList;var sTmp: string; iPos: Integer; Tokle ...