jsonobject中getkey_FastJson中JSONObject用法及常用方法总结

本文为博主原创,未经允许不得转载:

最近一直有用到解析各种数据,主要是用FastJson进行数据解析,其中一个重要的类为JSONObject,今天有时间,所以进行总结一下:

JSONobject是FastJson提供的对象,在api中是用一个私有的常量map进行封装的,实际就是一个map,只不过FastJson对其进行了封装,

添加了很多方便快捷的属性方法。

private final Map map;

在项目中添加maven依赖

com.alibaba

fastjson

1.2.48

先来看下它有哪些常用方法,以及有什么作用:

1.put(String key, Object value)方法,在JSONObject对象中设置键值对在,在进行设值得时候,key是唯一的,如果用相同的key不断设值得时候,保留后面的值。

2.Object get(String key) :根据key值获取JSONObject对象中对应的value值,获取到的值是Object类型,需要手动转化为需要的数据类型

3.int size():获取JSONObject对象中键值对的数量

4.boolean isEmpty():判断该JSONObject对象是否为空

5.containsKey(Object key):判断是否有需要的key值

6.boolean containsValue(Object value):判断是否有需要的value值

7.JSONObject getJSONObject(String key):如果JSONObjct对象中的value是一个JSONObject对象,即根据key获取对应的JSONObject对象;

8.JSONArray getJSONArray(String key) :如果JSONObject对象中的value是一个JSONObject数组,既根据key获取对应的JSONObject数组;

9.Object remove(Object key):根据key清除某一个键值对。

由于JSONObject是一个map,它还具有map特有的两个方法:

10.Set keySet() :获取JSONObject中的key,并将其放入Set集合中

11.Set> entrySet():在循环遍历时使用,取得是键和值的映射关系,Entry就是Map接口中的内部接口

与String字符串转换:

12.toJSONString() /toString():将JSONObject对象转换为json的字符串

常用的方法主要为以上这些,下面列出使用这些方法的example:

public static voidmain(String[] args) {//新建JSONObject对象

JSONObject object1 = newJSONObject();//1.在JSONObject对象中放入键值对

object1.put("name", "张三");

object1.put("name1", "张三1");

object1.put("name2", "张三2");//2.根据key获取value

String name = (String) object1.get("name");

System.out.println(name);//3.获取JSONObject中的键值对个数

int size =object1.size();

System.out.println(size);//4.判断是否为空

boolean result =object1.isEmpty();

System.out.println(result);//5.是否包含对应的key值,包含返回true,不包含返回false

boolean isContainsKeyResult = object1.containsKey("name");

System.out.println(isContainsKeyResult);//6.是否包含对应的value值,包含返回true,不包含返回false

boolean isContainsValueResult = object1.containsValue("王五");

System.out.println(isContainsValueResult);//7.JSONObjct对象中的value是一个JSONObject对象,即根据key获取对应的JSONObject对象;

JSONObject object2 = newJSONObject();//将jsonobject对象作为value进行设置

object2.put("student1", object1);

JSONObject student=object2.getJSONObject("student1");

System.out.println(student);//8.如果JSONObject对象中的value是一个JSONObject数组,既根据key获取对应的JSONObject数组;

JSONObject objectArray = newJSONObject();//创建JSONArray数组

JSONArray jsonArray = newJSONArray();//在JSONArray数组设值:jsonArray.add(int index, Object value);

jsonArray.add(0, "this is a jsonArray value");

jsonArray.add(1, "another jsonArray value");

objectArray.put("testArray", jsonArray);//获取JSONObject对象中的JSONArray数组

JSONArray jsonArray2 = objectArray.getJSONArray("testArray");

System.out.println(jsonArray2);//9.remove.根据key移除JSONObject对象中的某个键值对

object1.remove("name");

System.out.println(object1);//10.取得JSONObject对象中key的集合

Set keySet=object1.keySet();for(String key : keySet) {

System.out.print(" "+key);

}

System.out.println();//11.取得JSONObject对象中的键和值的映射关系

Set> entrySet =object1.entrySet();for (Entryentry : entrySet) {

System.out.println(entry);

}//12.转换为json字符串

String str1 =object1.toJSONString();

System.out.println(str1);

String str2=object1.toString();

System.out.println(str2);

}

运行以上程序的结果为:

最近感悟(不喜勿喷):

越长大越理解得别人的不容易,也发现自己更多的无奈和不容易,有很多想去照顾的人,想去做的事,却发现自己的能力只能承担起一丁点。想家了

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值