本文目錄一覽:
- 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
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/295206.html