toString()和String.valueOf()的区别(转)
慣例廣告一發(fā),對(duì)于初學(xué)真,真的很有用www.java1234.com,去試試吧!
?
?
有的朋友在用這兩個(gè)的時(shí)候感覺差不多
其實(shí),很多時(shí)候效果是差不多的
但是,有的時(shí)候用.toString()會(huì)報(bào)錯(cuò),而用String.valueOf()就不會(huì)報(bào)錯(cuò)
這說明兩者是有差別的,在細(xì)微之處~
.toString()和String.valueOf()的區(qū)別在哪呢?
jdk的文檔中對(duì).toString()有說明:
String.valueOf(Object ? o)?
if the argument is null, then a string equal to “null “; ?otherwise, ?the value of ?obj.toString()? is ?returned.
所以說,遇到這種特殊情況,就會(huì)出現(xiàn)異常
再看看String.valueOf()
| 1 | public static String valueOf(Object obj) { |
| 2 | ?????return (obj == null) ? "null" : obj.toString();? |
| 3 | } |
大家可以看到,String.valueOf()內(nèi)部調(diào)用的也是對(duì)象的 toString() 方法。
所以說如果你在使用中參數(shù)為null,調(diào)用toString方法就報(bào)異常了!而valueOf()方法因?yàn)樽隽耸欠駷閚ull的判斷,如過是null就返回null,不是就返回toString()后的字符串,
建議大家選用String.valueOf()
轉(zhuǎn)載于:https://www.cnblogs.com/hualidezhuanshen/archive/2013/06/15/3137887.html
總結(jié)
以上是生活随笔為你收集整理的toString()和String.valueOf()的区别(转)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微信亲属卡可以用信用卡吗?答案就在这里!
- 下一篇: 建行购车分期预审批额度多少?占信用额度吗