复杂json的转换 Map 数组 对象 生成 与 解析

json格式如下:

{
	"str":["1","2","3","5"],
	"articlecontent":
		{
		 "article_content":"啊是就",
		 "article_id":"4sadad"
		 }
	}

代码

import haust.vk.entity.Articlecontent;

import java.util.HashMap;
import java.util.Map;

import com.alibaba.fastjson.JSON;

public class CreateJson {
	public static void main(String[] args) {
		Map map = new HashMap();
		String[] str = new String[]{"1","2","3","5"};
		map.put("str", str);
		Articlecontent articlecontent = new Articlecontent();
		articlecontent.setArticle_content("啊是否了解啊放假啊水立方拉萨解放拉萨就");
		articlecontent.setArticle_id("4sadad");
		map.put("articlecontent", articlecontent);
		System.out.println(JSON.toJSONString(map));
		String str1 = JSON.toJSONString(map);
		Map parseObject = JSON.parseObject(str1, Map.class );
		System.out.println(parseObject);
		Object object = parseObject.get("str");
		System.out.println(object);
		//["1","2","3","5"]
		String substring = object.toString().substring(1,object.toString().length()-1).replace("\"", "");
		System.out.println(substring.split(",")[0]);
		Object object2 =  parseObject.get("articlecontent");
		System.out.println(object2);
		Articlecontent parseObject2 = JSON.parseObject(object2.toString(), Articlecontent.class);
		System.out.println(parseObject2.toString());
	}
}

使用到的Articlecontent对象如下:

public class Articlecontent {
	private String article_id;
	private String article_content;
	
	public Articlecontent() {}

	public String getArticle_id() {
		return article_id;
	}

	public void setArticle_id(String article_id) {
		this.article_id = article_id;
	}

	public String getArticle_content() {
		return article_content;
	}

	public void setArticle_content(String article_content) {
		this.article_content = article_content;
	}

	@Override
	public String toString() {
		return "Articlecontent [article_id=" + article_id
				+ ", article_content=" + article_content + "]";
	}
	
}

 

转载于:https://my.oschina.net/viakiba/blog/845892

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将字符串数组转换对象数组,你需要先定义一个对象构造函数,该构造函数接受一个字符串参数并将其转换对象属性。然后,将字符串数组中的每个字符串都传递给该构造函数,生成一个对象数组。 以下是一个示例代码,将一个包含字符串的数组转换为一个包含对象数组: ```javascript // 定义对象构造函数 function Person(name, age) { this.name = name; this.age = age; } // 定义字符串数组 var peopleStr = ["{'name':'Alice', 'age':20}", "{'name':'Bob', 'age':30}", "{'name':'Charlie', 'age':40}"]; // 将字符串数组转换对象数组 var peopleObj = peopleStr.map(function(str) { return JSON.parse(str.replace(/'/g, "\"")); // 先将字符串中的单引号替换为双引号,再解析JSON 对象 }).map(function(obj) { return new Person(obj.name, obj.age); // 使用对象构造函数生成对象 }); console.log(peopleObj); // 输出对象数组 ``` 在这个示例代码中,我们首先定义了一个 `Person` 构造函数,用于将字符串转换对象。然后,我们定义了一个包含三个字符串的数组 `peopleStr`,每个字符串都表示一个人的信息。接着,我们使用 `map` 方法遍历 `peopleStr` 数组,将其转换为包含三个 JSON 对象数组。由于 JSON 对象的属性名必须使用双引号而不是单引号,我们使用 `replace` 方法,包括添加课程和查看学生名单。 希望这个代码能够帮助到你,如果有什么问题欢迎再问!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值