欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

不同类型不同方法转换String的原理及区别

时间:2023-06-15
常用方法

1.toString

2.String.valueOf()

3.String强制转换

4.不需要借助包装类的转换

一般来说前两种方法的使用场景比较多

1.toString

最常见的方法,基本类型都没有toString方法,需要包装类调用,使用此方法需要注意判断调用者是否为null,否则可能会出现空指针异常

查看源码这里以Integer类型为例,首先做了一个自动拆箱的操作判断是否超过了int类型的最大值,然后进行了字符的拼接的操作

 2.String.valueOf()

推荐使用的方法,相较于toString方法,不会有空指针的异常出现

 查看源码同样都是调用了toString方法,不同的是包装类的形参为object类型,为了防止空指针进行了判断

 3.String强制转换

一般来说都不会用此方法,如果有使用场景推荐首先使用instanceof关键字来判断是否可以进行强转

 4.不需要借助包装类的转换例如 1 + ""

此方法因为写法不够优雅所以用的也比较少,此方法无法看到源码,但是我们可以利用其他方法来知道他的原理,如下图中,创建了一个类名为a的类,其中有两个属性都赋予了默认值,将其打印到控制台,一次重写了toString方法,一次没有重写可以两个不同的结果,所以我们可以得知此方式其实也是利用了toString方法来实现的

 

 

 

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。