1、Java的json得到我们想要的数据结构
创始人
2024-02-10 18:27:39
0

Java的json得到我们想要的数据结构

第一步:首先我们要知道json就两种数据结构。

!!!第一种数据结构:对象用{ }表示

!!!第二种数据结构:数组用[ ]表示

 

  1. 我们用这个案例来分析一下。首先最外面是一个{ }所以一个对象。

 

所以我们先new Bar对象。

 

  1. 跟着是一个上面对象的属性的数组了用[ ]表示

 

所以我们后面用的Arraylist来表示。然后用add加数据。然后将其中的数据set进前面的对象。(这里好好看看别人写法)

 

  1. 后面就是一个对象的属性的对象数组了(这里的数组里只有一个对象而已)所以里面是数组对象

 

所以我们后面就是一个数组对象。(数组里面是对象)也就是ArrayList

 

  1. 我们就去给这个里面的对象的各个属性赋值了(name很简单,直接先new出Servies)

然后set就ok了(都是在前面的对象数组里执行)

 

  1. 我们里面还有个对象的属性里一个Interger的数组。所以就是一个new ArrayList。然后再给这个数组add加数据

 

  1. 不要忘记我们这个将这个对象数组的对象用add加进去。也就是add s。(上面也是个数组嘛,只不过他是一个对象数组)

 

  1. 我们再将我们这个数组属性通过bar.setSeries(series);给属性赋值。

 

  1. 最后我们返回这个对象(我们最开始为一个对象嘛)

 

测试:

 

 

!!!总结:

  1. 其中我们这里面我们给对象的属性赋值最后是用的set属性这种。(上面我们有给对象数组属性,我们放进去数组。(两个大属性都是数组,只是一个是普通数组,一个是对象数组))
  2. 其中我们给数组加数据用的是add。(印象深刻吧,其中我们给下面的一个对象数组赋值是add(对象s))
  3. 我们数据结构最开始为什么结构,那么我们这个方法就要定义为什么结构(两种结构,要么数组[ ](可以是普通数组,也可以是对象数组),或者对象{ })
  4. 举一反三:我们看下这个json数据结构(饼图的)

 

这里我直接说逻辑我们怎么写:

首先我们发现其中最外面是一个[ ]是一个数组。而且是一个对象数组所以我们方法就要定义为ArrayList, 我们再new一个ArrayList这个就是最外层的数组(数组里面是对象(叫对象数组))。然后我们就是去new不同的Pie对象。然后分别对象的赋值方式(set属性)。最后就是给这个数组的属性对象赋值到数组了。(add)(这其中我们有两赋值操作1、里面的对象赋值set,2、外面的数组赋值add(不同的对象))最后返回这个对象数组list

 

package com.example.demo5.controller;import com.example.demo5.pojo.Bar;import com.example.demo5.pojo.Series;import org.springframework.web.bind.annotation.*;import java.util.*;/*** 对象的属性里面嵌套数组,还有数组里面([]为数组,{}为对象)*/@RestController@RequestMapping("/bar")public class BarController {@GetMappingpublic Bar bar() {Bar bar=new Bar();ArrayList strings = new ArrayList(){{add("苹果");}};bar.setCategories(strings);ArrayList series = new ArrayList(){{Series s = new Series();s.setName("手机品牌");s.setData(new ArrayList() {{add(1);add(2);add(3);}});add(s);}};bar.setSeries(series);return bar;}}package com.example.demo5.pojo;import lombok.Data;import java.util.List;import java.util.Map;@Datapublic class Bar {private List categories;private List series;}package com.example.demo5.pojo;import lombok.Data;import java.util.List;@Datapublic class Series {private String name;private List data;}package com.example.demo5.controller;import com.example.demo5.piepojo.Pie;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;import java.util.ArrayList;/*** 对象数组(本质是个数组(最外面是[]数组))(也就是多个对象)其中[]为数组。{}为对象*/@RestController@RequestMapping("/pie")public class PieController {@GetMappingpublic ArrayList pie(){ArrayList list=new ArrayList<>();Pie pie = new Pie();pie.setName("苹果");pie.setValue(108370);pie.setUrl("http://www.baidu.com");Pie pie2 = new Pie();pie2.setName("华为");pie2.setValue(2934456);pie2.setUrl("http://www.baidu.com");list.add(pie);list.add(pie2);return list;}}package com.example.demo5.piepojo;import lombok.Data;@Datapublic class Pie {private String name;private Integer value;private String url;}

相关内容

热门资讯

美丽蜕变的句子精选579句 美丽蜕变的句子 精选107句1. 有时候,城市太大,门槛太多,她和他一个人走了很远。2. 如果有一天...
描写小庭院优美的句子精选18... 描写小庭院优美的句子 精选66句1. 游人如果到当地农家作客,通常都会受到热情的款待,品尝酥油茶,喝...
让男人看了内疚的句子精选31... 让男人看了内疚的句子 精选53句1. 我不是冷血,更不是慢热。我只是害怕,投入太多,离开的时候会难过...
自己内心矛盾的句子精选181... 自己内心矛盾的句子 精选104句1. 如果,最后在身边的真的不是你。如果你经历了那么多的起起落落,最...
赞美校园保洁的句子精选115... 赞美校园保洁的句子 精选102句1. 你们用汗水与辛劳挥舞着手中笨拙的扫帚,给校园一个整洁的容貌,给...
环境描写死气沉沉句子精选98... 环境描写死气沉沉句子 精选69句1. 教室中死气沉沉,同学们个个都泪流满面,惟有几位同学装作一脸苦笑...
一生能遇到的句子精选420句 一生能遇到的句子 精选63句1. 选择你所爱的,然后爱你所选择的。2. 你的温柔,我懂,你的疼爱,我...
诚信的句子 有关诚信的句子大全  诚信是一种美德,会让你更加完美。下面是小编整理的有关诚信的句子大全,欢迎阅读!...
时间过得快的搞笑句子精选26... 时间过得快的搞笑句子 精选132句1. 我们不可能都成为英雄。2. 要找出时间来考虑一下,一天中做了...
你好六月的优美句子 你好六月的优美句子(精选100句)  在学习、工作或生活中,大家都听说过或者使用过一些比较经典的句子...
怀念好句子大全要短的精选38... 怀念好句子大全要短的 精选35句1. 小学同学聚会能聚这么多人真的不容易,好怀念以前小的时候现在大家...
有哲理的唯美句子精选76句 有哲理的唯美句子 精选50句1. 池塘边的榕树上,还有知了在声声叫着;家门口的小路旁,还有小狗在快乐...
自我独特的个性签名 自我独特的个性签名(精选70句)  不管现实多么惨不忍睹,都要持之以恒地相信,这只是黎明前短暂的黑暗...
人类破坏环境污染句子精选30... 人类破坏环境污染句子 精选64句1. 排放的气息,是乌云盖天的狂欢;森林的骤减,是沙漠扩展的心愿;灾...
繁体字情侣个性签名   繁体字情侣个性签名  1、討厭自己想刺猬一樣小心防備。討厭自己想小丑一樣假冒開心。  2、如果決...
抖音名字 抖音名字▼※目录※▼抖音名字(1-100个)抖音名字(101-200个)抖音名字(201-300个)...
爱情的经典个性签名 关于爱情的经典个性签名集锦  1、其实只要两个人幸福就好了,何必在乎别人的眼光和议论。  2、距离让...
女生爱情个性签名 女生爱情个性签名  永远都不好停止微笑,即使是在你难过的时候,说不定有人会正因你的笑容而爱上你。以下...
微信名字最好听的昵称(精选5... 微信名字最好听的昵称(精选500个)  一、什么是网名  网名指在网上使用的名字。由于网络是一个虚拟...
塘尾村 塘尾村广东省东莞市石排镇塘尾村塘尾村(广东省东莞市石排镇塘尾村)塘尾村位于东莞市石排内,古村以古围墙...