• Java Object转String方式


    1. Map map = new HashMap<>();
    2. map.put("a1","a");
    3. map.put("a2","");
    4. map.put("a3",1);
    5. map.put("a4",null);

    一、强制转换

    value = "a"或""可以进行强制转换String类型,值是String类型

    1. String value = (String)map.get("a1");
    2. String value = (String)map.get("a2");
    3. // value = "a"
    4. // value = ""

    value = 1(Integer类型)不能强制转换String类型

    String value = (String)map.get("a3"); // 类型转换异常

    value = null转换虽然不会报错,值依旧是null 

    key = a5,map中没有a5这个键,值也是null

    1. String value = (String)map.get("a4");
    2. String value = (String)map.get("a5");
    3. // value = null
    4. // value = null

    弊端:int或long类型强制转换异常

    二、toString()

    value = "a"或""或1(Integer类型),toString()方法可以直接转换String类型

    1. String value = map.get("a1").toString();
    2. String value = map.get("a2").toString();
    3. String value = map.get("a3").toString();
    4. // value = "a"
    5. // value = ""
    6. // value = "1"

    value = null或key = a5 ,a5不存在 ,toString()方法报空指针异常

    1. String value = map.get("a4").toString(); // 空指针异常
    2. String value = map.get("a5").toString(); // 空指针异常

    弊端:空指针异常 

    三、String.valueOf() (推荐使用)

    value = "a"或""或1或null 都可以直接转换String类型的字符串

    1. String value = String.valueOf(map.get("a1"));
    2. String value = String.valueOf(map.get("a2"));
    3. String value = String.valueOf(map.get("a3"));
    4. String value = String.valueOf(map.get("a4"));
    5. String value = String.valueOf(map.get("a5")); // a5键不存在
    6. // value = "a"
    7. // value = ""
    8. // value = "1"
    9. // value = "null"
    10. // value = "null"

    弊端:null对象会被转换成"null"

    四、+ ""(推荐使用)

    1. String value = map.get("a1") + "";
    2. String value = map.get("a2") + "";
    3. String value = map.get("a3") + "";
    4. String value = map.get("a4") + "";
    5. String value = map.get("a5") + ""; // a5键不存在
    6. // value = "a"
    7. // value = ""
    8. // value = "1"
    9. // value = "null"
    10. // value = "null"

    弊端:null对象会被转换成"null"

    方法三与方法四转换的字符串

    非空判断:

    1. if(!"".equals(value) && !"null"..equals(value)){
    2. }

    空判断:

    1. if("".equals(value) || "null"..equals(value)){
    2. }

  • 相关阅读:
    目标检测工具箱MMDetection安装及使用示例
    python threading和multiprocessing模块基本用法实例分析
    运筹学概述
    华为云云耀云服务器L实例评测|云耀云服务器L实例部署ZFile在线网盘服务
    Stream的简单学习
    JavaScript中的代理对象(proxy)
    New Coins
    java 设计模式
    React Native性能优化红宝书
    【数智化人物展】觉非科技CEO李东旻:数据闭环,智能驾驶数智时代发展的新引擎...
  • 原文地址:https://blog.csdn.net/qq_41482600/article/details/133811066