首页 > 编程知识 正文

java组织json数组(json对象和json数组的结构)

时间:2023-12-06 11:46:57 阅读:312501 作者:LSVL

本文目录一览:

  • 1、java怎么把数据转成json 数组
  • 2、求java合并json数据的代码
  • 3、java的JSONArray怎么用?比如有一个JSONArray是 [{..."a":123, "
  • 4、java的JSONArray如何使用?
  • 5、java解析json数据成数组
  • 6、java怎么将json对象转换成json数组

java怎么把数据转成json 数组

有两种方法实现: (1)直接转换: 创建JSONArray对象、JSONObject对象,通过put方法将其数据以键值对的形式填充,如例: //假如有一个Java实体类Person,包括以下属性:phone、sex、married、address。 ArrayList persons = new ArrayLis

求java合并json数据的代码

我想了一下,但是得有一个前提,就是第一个json数组的size必须和第二个json数组的size相同,并且一一对应,否则将造成数组溢出。

如果是基于上面这个前提,那么实现的方法就简单了。

操作json对象,其实标准的方法是将实体类转换成json后再操作,我这里的话为了便捷直接使用谷歌的Gson来创建JsonObject了,其他的json依赖还有阿里巴巴的FastJson等等,看你平时用什么习惯。

引入Gson依赖:

dependency

groupIdcom.google.code.gson/groupId

artifactIdgson/artifactId

version2.8.0/version

/dependency

实现代码:

public class Main {

public static void main(String[] args) {

JsonArray jsonArray1 = new JsonArray();

JsonObject json11 = new JsonObject();

json11.addProperty("数据1", "0000");

json11.addProperty("数据2", "1111");

JsonObject json12 = new JsonObject();

json12.addProperty("数据1", "0000");

json12.addProperty("数据2", "1111");

JsonObject json13 = new JsonObject();

json13.addProperty("数据1", "0000");

json13.addProperty("数据2", "1111");

jsonArray1.add(json11);

jsonArray1.add(json12);

jsonArray1.add(json13);

System.out.println(jsonArray1);

JsonArray jsonArray2 = new JsonArray();

JsonObject json21 = new JsonObject();

json21.addProperty("数据3", "6666");

JsonObject json22 = new JsonObject();

json22.addProperty("数据3", "6666");

JsonObject json23 = new JsonObject();

json23.addProperty("数据3", "6666");

jsonArray2.add(json21);

jsonArray2.add(json22);

jsonArray2.add(json23);

System.out.println(jsonArray2);

//遍历json数组,按位取出对象

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

JsonObject json1 = jsonArray1.get(i).getAsJsonObject();

JsonObject json3 = jsonArray2.get(i).getAsJsonObject();

//遍历数据3内容,通过Entry获取数据3的key和value,并合并到数据1中

for (Map.EntryString, JsonElement item : json3.entrySet()) {

json1.addProperty(item.getKey(), item.getValue().getAsString());

}

}

System.out.println(jsonArray1);

}

}

整体思路为:遍历两个json数组,按位进行合并操作。合并时,遍历数据3的jsonObject,获取其key和value,并将其合并到数据1中即可。

运行结果:

java的JSONArray怎么用?比如有一个JSONArray是 [{..."a":123, "

从json数组中得到相应java数组,如果要获取java数组中的元素,只需要遍历该数组。

数组内容如下:

/**

* 从json数组中得到相应java数组

* JSONArray下的toArray()方法的使用

* @param str

* @return

*/

public static Object[] getJsonToArray(String str) { JSONArray jsonArray = JSONArray.fromObject(str);

return jsonArray.toArray();     }

3.从json数组中得到java数组,可以对该数组进行转化,如将JSONArray转化为String型、Long型、Double型、Integer型、Date型等等。

4.分别采用jsonArray下的getString(index)、getLong(index)、getDouble(index)、getInt(index)等方法。

5.同样,如果要获取java数组中的元素,只需要遍历该数组。

java的JSONArray如何使用?

从json数组中得到相应java数组,如果要获取java数组中的元素,只需要遍历该数组。

数组内容如下:

/**

* 从json数组中得到相应java数组

* JSONArray下的toArray()方法的使用

* @param str

* @return

*/

public static Object[] getJsonToArray(String str) { JSONArray jsonArray = JSONArray.fromObject(str);

return jsonArray.toArray();     }

3.从json数组中得到java数组,可以对该数组进行转化,如将JSONArray转化为String型、Long型、Double型、Integer型、Date型等等。

4.分别采用jsonArray下的getString(index)、getLong(index)、getDouble(index)、getInt(index)等方法。

5.同样,如果要获取java数组中的元素,只需要遍历该数组。

java解析json数据成数组

String arr = "[{"a":"111","b":"222","c":"333"},{"a":"1000","b":"2000","c":"000"},{"a":"999","b":"300","c":"700"}]";

ListString aList = new ArrayListString();

ListString bList = new ArrayListString();

ListString cList = new ArrayListString();

JSONArray jsa = JSONArray.fromObject(arr);

for(Object obj : jsa){

JSONObject jso = JSONObject.fromObject(obj);

aList.add( jso.get("a").toString() );

bList.add( jso.get("b").toString() );

cList.add( jso.get("c").toString() );

}

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

if(i==0)  

System.out.print("a:");

System.out.print(aList.get(i)+" ");

}

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

if(i==0)  

System.out.print("b:");

System.out.print(bList.get(i)+" ");

}

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

if(i==0) 

System.out.print("c:");

System.out.print(cList.get(i)+" ");

}

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

1、使用原生的解析:

String json = "...";

JSONArray array= new JSONArray(json);

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

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

obj = array.getJSONObject(j);

Data data = new Data();

data.setThumbnail(obj.getString("thumbnail"));

data.setTitle(obj.getString("title"));

data.setUrl(obj.getString("url"));

mDataList.add(data);

}

2、使用第三方包如Gson,但是这个你得保证你的JSON字符串个z

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。