添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

开发中经常遇到从集合类List、Map中取出数据转换为String的问题,这里如果处理不好,经常会遇到空指针异常java.lang.NullPointerException,在此总结一下常用转换为String的方法,以及转换后如何对其进行判null使用的问题。

Java中对象转换为String的常用方法:

方法一:String  objStr  =  (String) obj:

强制类型转换,对象obj为null,结果也为null,但是obj必须保证其本质是String类型的值,即可转换的值。

例如,不能强制转换 (String) 123

方法二:String  objStr  =  obj.toString():

调用对象的toString方法,必须保证本类或者父类已经重写了Object类的toString方法,如果没有重写toString方法,

将默认调用Object类的toString方法,返回getClass().getName() + '@' + Integer.toHexString(hashCode()),

并不是obj的实际字符串表示,同时还必须保证对象obj不能为null,否者调用toString方法会报空指针异常java.lang.NullPointerException。

方法三:String  objStr  =  String.valueOf(obj):

对象obj为null,转换结果为字符串"null",否则,返回 obj.toString() 的值。

注意,如果为obj为null,这里转换后的值已经是字符串的“null”,判空不能再用 obj == null,也不能使用apache.commons.lang3

下的StringUtils.isBank(CharSequence cs),而应该用 str.equals("null")。

已经知道obj为String类型的情况下:

使用方法1转换为String,转换为String后判null条件为:if (objStr != null)

慎用方法2

对于不知道具体类型的情况下,可以使用方法3,只是转换后String的判null条件改为:if (!objStr.equals('null'))

相信大家在日常开发中这三种方法用到的应该很多,尤其是前两种,经常在开发的 候,随心所欲,想用哪个用哪个,既然存在,那就应该有它存在的道理,那么什么情况下用哪个呢? 二、代码实例 1、基本类型 (1)基本类型没有 toString ()方法 (2)推荐使用 (3)无法强转 ( String )是标准的类型 转换 ,将Object类型转为 String 类型,使用( String )强转 ,最好使用instanceof做一个类型检查,以判断是否可以进行强转,否则容易抛出ClassCas... public class AADemo_4 { public static void main( String [] args) { User1 user1 = new User1("xiaowang",17); User1 user11 = null ; System.out.print
在实际开发中,少不了使用这三种方法对某一个类型的数据进行转 String 的操作,那么什么情况下使用哪种方法更快捷,以及这些方法使用 的一些注意事项都有哪些呢?这篇文章参考自《掘金》上大佬的头条三面: toString ()、 String .valueOf、( String )强转,有啥区别? - 掘金 ,来叙述一下这三种方法的使用场景。废话少说,直接上代码! 一、基本类型 转换 1. toString () 基本类型是没有 toString () 方法的 2. String .valueOf() 基本类型转.
toString ()方法返回反映这个对象的字符串 因为 toString 方法是Object里面已经有了的方法,而所有类都是继承Object,所以“所有对象都有这个方法”。 它通常只是为了方便输出,比如System.out.println(xx),括号里面的“xx”如果不是 String 类型的话,就自动调用xx的 toString ()方法 总而言之,它只是sun公司开... Undefined 未定义:当声明一个变量,但是并不给变量赋值 。它的值就是undefined Object 对象 其中 String Number Boolean Null Undefined 为 基本数据类型 Object 为引用数据类型 强制类型 转换 : 将其它的数据类型 转换 String 方式一: 1.调用被 转换 类型的 toString ()方法,该方法不会影
如果我们的对象为空对象的 候,我们再使用 toString () 方法,我们将会得到空对象的异常。这个对象有可能就是 String 对象,也有可能是其他的对象。如下面的 2 行语句: 如果你执行上面 2 行语句的话,铁定会抛出下面的空对象异常。如何让 Java 能够 toString 又不抛出异常呢?我们可以使用 Apache commons.lang3 提供的 toString () 方法。如下面显示的使用用例: 如果我们输入的对象为 NULL 的话,上面的语句将会输出一个指定的字符串而不抛出空异常。
大家在日常测试的 候,经常需要输出一个dto的具体key-value,如下图,当我们直接输出user对象 ,发现输出的是只是对象的引用并没有输出我们想要的key-value值。 这里大家可能都知道使用fastjson 转换 string 输出,当然首先是引入fastjson的jar包 <dependency> <groupId>com.alibab...
ToString 字符串 转换 你用正确了吗?前言 ToString ()ConVert. ToString ()建议使用方式Object到 String 转换 方法 在开发中, ToString ()这个方法太方便了,以致于误解大家 转换 都是直接Object. ToString ()直接 转换 , 其实不然, 一般都是转之前先判断是否为 null 后再进行 转换 ,否则会直接报错。 ToString () 每个类的基类都是Object类, ToString ()是可以编写 overload 和 override 的方法之一。 因此,当你调用o