判断Object中数据类型(已知类型、未知类型))

基础知识 专栏收录该内容
29 篇文章 0 订阅

一、已知数据类型

接收到的数据类型为Object,如果知道数据的类型可以使用ObjectMapper进行处理,得到里面的参数。

import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.IOException;
import java.util.HashMap;
public class Test02 {
    public static void main(String[] args) throws IOException {
        String str = "{\"one\":\"yes\",\"key\":\"value\"}";
        ObjectMapper mapper = new ObjectMapper();
        HashMap hashMap = mapper.readValue(str, HashMap.class);
        System.out.println(hashMap.toString());
    }
}

二、未知数据类型

假如,不清楚数据类型,或者接收到的数据类型有很多种,这样就需要对接收到的数据,按类型进行分类处理,这就要求对接收到的数据类型进行判断。

方法一、equals进行判断

HashMap<String, String> hashMap = new HashMap<>();
Object object = (Object)hashMap;
if (HashMap.class.equals(object.getClass())){
    System.out.println("true");
}

方法二、instanceof进行判断

测试一个对象obj是否为一个类的实例;obj必须为引用类型,不能是基本类型;obj为null,则返回false。

HashMap<String, String> hashMap = new HashMap<>();
Object obj = (Object)hashMap;
if (obj instanceof HashMap){
    System.out.println("True");
}

方法三、通过class获取类型

HashMap<String, String> hashMap = new HashMap<>();
Object object = (Object)hashMap;
String simpleName = object.getClass().getSimpleName();
if ("HashMap".equals(simpleName)){
    System.out.println("True");
}
  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: 创作都市 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值