前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JAVA对象转map_java处理字符串类型的map

JAVA对象转map_java处理字符串类型的map

作者头像
全栈程序员站长
发布2022-10-03 14:31:18
1.4K0
发布2022-10-03 14:31:18
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

1、使用fastJson 将String转 map:

String out;

Object succesResponse = JSON.parse(out); //先转换成Object

Map map = (Map)succesResponse; //Object强转换为Map

2、String 转 java 对象

fastjson 应用 string字符串转换成java对象或者对象数组

代码如下

import java.util.ArrayList;

import java.util.Arrays;

import java.util.List;

import com.alibaba.fastjson.JSON;

import com.alibaba.fastjson.JSONObject;

import com.alibaba.fastjson.TypeReference;

public class TestFastJson {

public static void main(String[] args) {

// 转换成对象

String jsonstring = “{\”a\”:51,\”b\”:0}”;

Usa u1 = JSON.parseObject(jsonstring, new TypeReference(){});

Usa u2 = JSON.parseObject(jsonstring,Usa.class);

// 转换成对象数组

String jsonstring2 = “[{\”a\”:51,\”b\”:0}]”;

Usa[] usa2 = JSON.parseObject(jsonstring2, new TypeReference(){});

List list = Arrays.asList(usa2);

// 转换成ArrayList

ArrayList list2 = JSON.parseObject(jsonstring2, new TypeReference>(){});

// 转换成ArrayList(默认) list3 与 list4 效果相同

ArrayList list3 = JSON.parseObject(jsonstring2, new ArrayList().getClass());

ArrayList list4 = JSON.parseObject(jsonstring2, ArrayList.class);

for (int i = 0; i

JSONObject io = list4.get(i);

System.out.println(io.get(“a”) + “======adn=====”+io.get(“b”));

}

}

}

class Usa {

private int count = 1888;

private String base = “project”;

private Long a;

public Long getA() {

return a;

}

public void setA(Long a) {

this.a = a;

}

private String b;

public String getB() {

return b;

}

public void setB(String b) {

this.b = b;

}

}

json字符串 直接转换成List

ArrayList usa2 = JSON.parseObject(jsonstring2, new TypeReference>(){});

或者转换成对象数组

Usa[] usa2 = JSON.parseObject(jsonstring2, new TypeReference(){});

对象数组转List

List list = Arrays.asList(usa2);

我们使用new TypeReference的时候会生成多个class文件 里面有多少个new TypeReference 就会新增了class

即使我们在for循环里(0-N)写new TypeReference 这段代码也是多生成一个class文件,fastjson是看我们写了多少new TypeReference,而不是调用了多少次new TypeReference。推荐用ArrayList.class

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

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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年9月4日 下,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档