jsonarrayjsonarray删除指定元素
本文目录一览:
- 1、JSONArray的解析
- 2、jsonarray怎么添加元素
- 3、java的JSONArray如何使用?
- 4、jsonarray怎么解析字符串
- 5、如何将json解析成jsonarray
- 6、如何获取jsonarray中 某个值
JSONArray的解析
问题1:类似String s = "[ { },{ },{ } ]";这种结构的解析
方法一:
Gson gson =newGson();
ListObject mList = gson.fromJson(result, newTypeTokenListObject(){}.getType());
类似下图:
方法二:
1.将该String字符串转为JSONArray
JSONArray objects =JSONArray.parseArray(result);
2.遍历这个JSONArray,将每个JSONArray转为对应的实体
for(intj=0;jobjects.size();j++){
JSONObject jsonObject = objects.getJSONObject(j);
Object mObject= JSONObject.parseObject(jsonObject.toString(),Object.class);
mList.add(mObject); //添加到与之对应的list集合
}
类似下图
jsonarray怎么添加元素
JSONArray jsonArray = new JSONArray();
JSONObject json = new JSONObject();
json.accumulate("a","1");
json.accumulate("b","2");
json.accumulate("c","3");
jsonArray.add(json);
试试这样添加看看,我本地这样是没问题,就算调用你使用的element方法也没问题
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数组中的元素,只需要遍历该数组。
jsonarray怎么解析字符串
java解析json字符串时将大括号中的对应为一个类,里面的数据对应为类的属性,最后用数组接受即可。
示例关键代码如下:
//导入 net.sf.json.JSONArray和net.sf.json.JSONObject 两个jar 包
String str = "[{name:'a',value:'aa'},{name:'b',value:'bb'},{name:'c',value:'cc'},{name:'d',value:'dd'}]" ; // 一个未转化的字符串
JSONArray json = JSONArray.fromObject(str ); // 首先把字符串转成 JSONArray 对象
if(json.size()0){
for(int i=0;ijson.size();i++){
JSONObject job = json.getJSONObject(i); // 遍历 jsonarray 数组,把每一个对象转成 json 对象
System.out.println(job.get("name")+"=") ; // 得到 每个对象中的属性值
}
}
如何将json解析成jsonarray
有两种方法实现:
(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);
如何获取jsonarray中 某个值
1、创建一个jsonArray对象。里面包含重复的内容,如图。
2、然后创建一个set集合,因为set集合中的元素不重复具有去重的效果。
3、通过循环把jsonArray对象中的元素都添加到set集合且先输出元对象的内容来看效果。
4、把jsonArray添加到set集合后,从上一步可以看出是3条记录,这里把set集合的长度输出看下它的大小可以发现变小了。
5、再把set集合转成字符串再转换成jsonArray对象。
6、重新使用for循环把新赋值的jsonArray对象值输出就完成了。
jsonarray的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于jsonarray删除指定元素、jsonarray的信息别忘了在本站进行查找喔。
相关文章
发表评论
评论列表
- 这篇文章还没有收到评论,赶紧来抢沙发吧~