java中判断json数据的类型

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONException;
import com.alibaba.fastjson.JSONObject;
import org.springframework.stereotype.Service;
public int testIsObject1(String jsonString){
    /*
     * return 0:既不是array也不是object
     * return 1:是object
     * return 2 :是Array
     */
    try {
        JSONObject object = JSON.parseObject(jsonString);
        return 1;
    } catch (Exception e) {// 抛错 说明JSON字符不是数组或根本就不是JSON
        try {
            JSONArray array = JSON.parseArray(jsonString);
            return 2;
        } catch (Exception ee) {// 抛错 说明JSON字符根本就不是JSON
            return 0;
        }
    }

}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 Java ,我们可以使用 JSON 库来处理 JSON 数据。要判断 JSON 对象是否存在,可以按照以下步骤进行操作: 1.将 JSON 字符串转换成 JSON 对象 ```java JSONObject jsonObject = new JSONObject(jsonString); ``` 2.使用 `has` 方法判断 JSON 对象是否存在指定的键 ```java if(jsonObject.has("key")){ //存在 }else{ //不存在 } ``` 其,"key" 是要判断的键名。如果存在,`has` 方法返回 true;如果不存在,返回 false。 ### 回答2: 在Java,要判断JSON对象是否存在,需要借助第三方库来解析JSON。常用的第三方库有Jackson、Gson等。以下是使用Jackson库来判断JSON对象是否存在的示例代码: 首先,你需要将JSON字符串解析成一个JsonNode对象。JsonNode是Jackson库的一个类,代表JSON节点。你可以使用ObjectMapper类来实现这一步骤。示例代码如下: ```java import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; public class JsonExistenceExample { public static void main(String[] args) throws Exception { // 示例JSON字符串 String jsonString = "{\"name\":\"John\",\"age\":30}"; // 创建ObjectMapper对象 ObjectMapper objectMapper = new ObjectMapper(); // 解析JSON字符串为JsonNode对象 JsonNode jsonNode = objectMapper.readTree(jsonString); // 判断JSON对象是否存在 if (jsonNode != null) { System.out.println("JSON对象存在"); } else { System.out.println("JSON对象不存在"); } } } ``` 在上述代码,我们先定义了一个示例的JSON字符串,并创建了一个ObjectMapper对象。然后,通过调用objectMapper的readTree()方法,将JSON字符串解析成一个JsonNode对象。最后,通过判断jsonNode是否为null,来判断JSON对象是否存在。 需要注意的是,以上代码示例假设了JSON字符串的格式是正确的,如果JSON字符串格式有误,会抛出异常。因此在实际使用,还需要进行异常处理。另外,通过JsonNode对象,还可以进一步判断JSON字段的存在与否。 ### 回答3: 在Java判断JSON对象是否存在可以采用以下方式: 1. 使用Json库解析JSON字符串:可以使用常见的Java JSON库,例如Jackson或者Gson,通过将JSON字符串解析成Java对象的方式来判断JSON对象是否存在。解析后的对象可以使用isNull()或者contains()等方法来判断JSON对象是否存在。 2. 使用Java原生JSONObject类来判断:如果不涉及复杂的JSON结构,也可以使用Java原生的JSONObject类来判断JSONObject类提供了一些方法来判断键值对是否存在,例如has(String key)、isNull(String key)等。 下面是使用Jackson库解析JSON字符串的例子: ```java import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; public class JsonExample { public static void main(String[] args) { String json = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}"; try { ObjectMapper objectMapper = new ObjectMapper(); JsonNode jsonNode = objectMapper.readTree(json); if (jsonNode.has("name")) { System.out.println("name字段存在"); } else { System.out.println("name字段不存在"); } if (jsonNode.isNull()) { System.out.println("JSON对象为空"); } else { System.out.println("JSON对象不为空"); } } catch (Exception e) { e.printStackTrace(); } } } ``` 以上代码会输出: ``` name字段存在 JSON对象不为空 ``` 这样就可以根据需要判断JSON对象的存在与否。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值