前言
嗯,一个常用的代码,但是有时候却没有探究,现在做一下笔记
区别
toString() | String.valueOf() | (String)强转 | |
---|---|---|---|
基本数据类型 | 不能使用 | 可以使用 | 可以使用,但是需要instanceOf 判断(下同) |
包装类 | 可以使用,但是存在null异常 | 可以使用 ,返回“null”字符串 | 强制返回null |
建议 | 不怎么推荐 | 推荐使用 | 如果要null的时候在用,但是注意instanceOf |
其他
实际上String.valueOf()和toString一样,只是本身多了一些处理
源码:
public static String valueOf(Object obj){
return (obj == null ) ? "null":obj.toString();
}
那它基本数据类型的实现呢?
源码:
public static String valueOf(int ){
return Integer.toString(i);
}
以上