您的位置:

java处理json格式数组(json数组转java数组)

java处理json格式数组(json数组转java数组)

更新:

本文目录一览:

java怎么将json对象转换成json数组

1、需要json的相关jar包

2、设置json格式字符串:

String str="{\"student\":[{\"name\":\"leilei\",\"age\":23},{\"name\":\"leilei02\",\"age\":23}]}";

3、建立相应的类:

public class StudentList {

ListStudent student;

public ListStudent getStudent() {

return student;

}

public void setStudent(ListStudent student) {

this.student = student;

}

}

public class Student {

private String name;

private int age;

//private StudentClass studentClass;

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;

}

}

4、测试程序

import java.util.List;

import org.codehaus.jackson.map.ObjectMapper;

用Java语言:从下列Json数组中只展示“productTypeName=公路零担”的数据集?

java处理json,最经典的做法还是将String字符串转换成对象来处理。

需要借助第三方jar包,常见的第三方json处理jar包有:阿里巴巴的fastjson,谷歌的gson还有诸如jackson之类的。

我习惯用gson:

1、引入gson依赖或去网上下载其jar包:

dependency

groupIdcom.google.code.gson/groupId

artifactIdgson/artifactId

version2.3.1/version

/dependency

2、根据json串,定义对象:

首先定义json最外层,我称其为Response,Response中有根节点data:

这里我用了lombok的@Data注解,自动生成getter、setter、toString等方法。

然后定义了根节点对象Data1,里面有Record集合records:

之后就是定义Record的各个字段:

现在我就有了完整的数据结构,使用gson进行转换即可:

接下来拿着response对象进行正常的java逻辑处理就行:

完整代码:

public class TController {

public static void main(String[] args) {

String jsonString = "{\n" +

"\"data\":{\n" +

"\"records\":[\n" +

"{\n" +

"\"couponName\":\"\",\n" +

"\"payTime\":\"2021-11-15 11:11:33\",\n" +

"\"providerEndAddress\":\"\",\n" +

"\"paidMoney\":268,\n" +

"\"weihuUserId\":\"0\",\n" +

"\"productTypeName\":\"公路零担\"\n" +

"},\n" +

"{\n" +

"\"couponName\":\"\",\n" +

"\"payTime\":\"2021-11-15 11:11:33\",\n" +

"\"providerEndAddress\":\"\",\n" +

"\"paidMoney\":268,\n" +

"\"weihuUserId\":\"0\",\n" +

"\"productTypeName\":\"航空运输\"\n" +

"}\n" +

"]\n" +

"}\n" +

"}";

Gson gson = new Gson();

Response response = gson.fromJson(jsonString, Response.class);

Data1 data = response.getData();//取出data

ListRecord records = data.getRecords();//取出records

for (int i = 0; i records.size(); i++) {

//循环判断records中的数据,ProductTypeName不为“公路零担”则移除

if (!"公路零担".equals(records.get(i).getProductTypeName())) {

records.remove(i);

i--;

}

}

data.setRecords(records);//覆盖原有的records

response.setData(data);//覆盖原有的data

System.out.println(gson.toJson(response, Response.class));//转成json字符串输出

}

@Data

private class Response {

private Data1 data;

}

@Data

private class Data1 {

private ListRecord records;

}

@Data

private class Record {

private String couponName;

private String payTime;

private String providerEndAddress;

private String paidMoney;

private String weihuUserId;

private String productTypeName;

}

}

运行结果:

java中把json怎么转换成数组?

使用原生的解析:

String json = "...";

//遍历数组里的值,得到每个独立的对象,然后获取对应的值设置到声明好的对象中,最终创建对象完成后添加到集合中,如我自己代码里的片段:

for (int j = 0; j array.length(); j++) {

obj = array.getJSONObject(j);

Data data = new Data();

mDataList.add(data);

}

数组声明

在数组的声明格式里,“数据类型”是声明数组元素的数据类型,可以是java语言中任意的数据类型,包括简单类型和结构类型。“数组名”是用来统一这些相同数据类型的名称,其命名规则和变量的命名规则相同。

数组声明之后,接下来便是要分配数组所需要的内存,这时必须用运算符new,其中“个数”是告诉编译器,所声明的数组要存放多少个元素,所以new运算符是通知编译器根据括号里的个数,在内存中分配一块空间供该数组使用。利用new运算符为数组元素分配内存空间的方式称为动态分配方式。

以上内容参考:百度百科-数组

java怎么读取json格式的数据

java可以使用JSONObject和JSONArray来操作json对象和json数组,具体用法如下

1:java对象与json串转换:

java对象—json串:

JSONObject JSONStr = JSONObject.fromObject(object);

String str = JSONStr.toString();

json串—java对象:

JSONObject jsonObject = JSONObject.fromObject( jsonString );

Object pojo = JSONObject.toBean(jsonObject,pojoCalss);

2:java数组对象与json串转换:

java数组—json串:

JSONArray arrayStr = JSONArray.fromObject(List?);

String str = arrayStr.toString();

json串—java数组:

JSONArray array = JSONArray.fromObject(str);

List? list = JSONArray.toList(array, ?.class);

java怎么把数据转成json 数组

有两种方法实现:

(1)直接转换:

创建JSONArray对象、JSONObject对象,通过put方法将其数据以键值对的形式填充,如例:

//假如有一个Java实体类Person,包括以下属性:phone、sex、married、address。

ArrayListPerson persons = new ArrayListPerson();

for (int i = 0; i 3; i++) {

persons.add(new Person("138******67", "女", true, "北京朝阳区"));//填充Java实体类集合

}

JSONArray array = new JSONArray();// Json格式的数组形式

JSONObject obj;//json格式的单个对象形式

for (int i = 0; i persons.size(); i++) {

obj = new JSONObject();

//依次填充每一个Java实体对象

try {

obj.put("phone", persons.get(i).getPhone());//json通过put方式以key-value形式填充

obj.put("sex", persons.get(i).getSex());

obj.put("married", persons.get(i).getMarried());

obj.put("address", persons.get(i).getAddress());

array.put(obj);//将JSONObject添加入JSONArray

} catch (JSONException e) {

e.printStackTrace();

}

}

(2)通过GSON工具实现:

只需要创建GSON对象,通过toJson方法转换即可。如例:

//模拟Java数据

Person person = new Person("敏敏", 23, "女", "北京市海淀区");

//创建GSON对象

Gson gson = new Gson();

//调用toJson方法即可转换为字符串的json格式

String json = gson.toJson(person);

java处理json格式数组(json数组转java数组)

本文目录一览: 1、java怎么将json对象转换成json数组 2、用Java语言:从下列Json数组中只展示“productTypeName=公路零担”的数据集? 3、java中把json怎么转换

2023-12-08
Java数组转JSON

2023-05-21
java转json,java转json数组

2023-01-06
Java数组转JSON

2023-05-21
javalis转json数组,JAVA中将string转为j

2022-11-27
json数组成java(json的数组表示)

本文目录一览: 1、json数组转java对象怎么转 2、实际开发中,入参json数组如何转换为java数组 3、json数组转java对象怎么转? 4、json数组怎么转java数组 json数组转

2023-12-08
java循环获取json数组(如何获取json中的数组)

本文目录一览: 1、java怎么读取json格式的数据 2、JAVA怎么取JSON数组里的值??? 3、java json数组遍历层如下结果,跪求大神 4、JAVA中json读取数组的方法 5、跪求大

2023-12-08
jqueryjson转数组,java json对象转数组

2023-01-05
java解析json,Java解析JSON数组

2022-11-28
java组织json数组(json对象和json数组的结构)

本文目录一览: 1、java怎么把数据转成json 数组 2、求java合并json数据的代码 3、java的JSONArray怎么用?比如有一个JSONArray是 [{..."a":123, "

2023-12-08
java转json,java转json格式

2023-01-09
java遍历json数组字符串,json 字符串数组

2022-11-23
js获取java的数组,java获取json中的数组

本文目录一览: 1、在js文件中怎么获得java方法返回的值 2、js中获取java文件传过来的list对象列表 3、js 数组 在java中怎么读取 4、JS怎么接收Java返回的数组?求解答 在j

2023-12-08
json转数组c,json转数组 jquery

本文目录一览: 1、如何将json格式转换为数组 2、c#如何把json转换为二维数组 3、c# json转数组 如何将json格式转换为数组 java中把json怎么转换成数组的方法:1、使用原生的

2023-12-08
java如何组织json格式(java如何生成json文件)

本文目录一览: 1、请问这样的json字符串应该怎样组织,用的java 2、JavaWeb项目中怎么将Jsp页面的数据转换成Json格式交互到后台对应Servlet类中 3、java怎么处理json格

2023-12-08
java中json数据的处理(java怎么处理json数据)

2022-11-08
java中数组转jsonobject,java数字转数组

本文目录一览: 1、java中把json怎么转换成数组? 2、如何用java实现list转换成json格式 3、如何将java对象数组转化为JSON树 4、java 数组怎么转换成json字符串 ja

2023-12-08
深入理解Java Json数组

2023-05-20
java给jsonarray赋值(java数组转jsonar

本文目录一览: 1、java的JSONArray如何使用? 2、java怎么将json对象转换成json数组 3、java后台的json值怎么传给jsp页面,并进行遍历 4、java类里的数组 如何

2023-12-08
java二维数组转xml(数组转二维数组)

2022-11-12