String 的转换 ,你平时有关注过么?

2023-12-21 09:33:15

大家平时需要将一个值转换成字符串类型 String时是如果操作的?

随缘? 还是看心情?


toString? ?(String)? ?String.valueOf()?

这三个玩意的区别是啥?

?toString ,是某个对象的函数

所以有3个点要注意:

①这是得是对象.

?int a=10 ;?
?double b=20;?
?
? 能用toString 么? 答案是不能。 因为它们不是对象。
??
②即使是对象也得有这个方法 ?,如果这对象都没toString,那就别谈了。

③对象值不能是null,会报空指针。

?

(String) 强转

强扭的瓜不甜,如果转不了直接报错。

所以用的时候要自己清楚这个类能不能转成String ,或者自己加个try catch 做好应对。


当然配合 instanceof 用是合适的,先判断是不是String,是再转。

String.valueOf()

明显看起来这个方法就出身于名门正派 ,是来自String类的。

但是注意的是什么,传入的值是null的时候, 会转换成 "null" ,源码上是做了处理。

那除了上面三种方式,还有没有别的方式转字符串?


我也列2种 :

① 直接后面拼接 +""? ?:

Object o = 2;
String str1=o+"";

② 使用Objects.toString(objA, "为空时的默认值") :

Object o = 2;
String s = Objects.toString(o, "空");

文章来源:https://blog.csdn.net/qq_35387940/article/details/135107932
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。