Java类型转换中 (String)、toString、String.valueOf()区别

1、(String):强转,类型不匹配的时候会报类型转换异常。

Java类型转换中 (String)、toString、String.valueOf()区别_第1张图片

2、  toString  :值为空的时候会报空指针异常。

Java类型转换中 (String)、toString、String.valueOf()区别_第2张图片

Java类型转换中 (String)、toString、String.valueOf()区别_第3张图片

3、  String.valueOf()  :  不会报上述两种异常、很多人推荐使用,但会出现逻辑问题,我们来看源码:

可以看到如果对象为空,返回的是“null”,而不是null,如果后面用 str==null 进行判断会得出错误结果。 

Java类型转换中 (String)、toString、String.valueOf()区别_第4张图片

Java类型转换中 (String)、toString、String.valueOf()区别_第5张图片

你可能感兴趣的:(Java类型转换中 (String)、toString、String.valueOf()区别)