Integer.toString()与String.valueOf(Oject)有什么不同(2015年10月8日),
分享于 点击 44466 次 点评:279
Integer.toString()与String.valueOf(Oject)有什么不同(2015年10月8日),
public String toString()
返回一个表示该 Integer 值的 String 对象。将该参数转换为有符号的十进制表示形式,并以字符串的形式返回它,就好像将该整数值作为参数赋予 toString(int) 方法一样。
public static String valueOf(int i)
返回 int 参数的字符串表示形式。该表示形式恰好是单参数的 Integer.toString 方法返回的结果。
以上是API中说明。
源码:
public String toString() {
return String.valueOf(value);
}
-->public static String valueOf(int i) {
return Integer.toString(i, 10);
}
public static String valueOf(Object obj) {
return (obj == null) ? "null" : obj.toString();
}
它们的异同:
java.lang.Object类里已有public方法.toString(),所以对任何严格意义上的java对象都可以调用此方法。但在使用时要注意,必须保证object不是null值,否则将抛出NullPointerException异常。
而valueOf(Object obj)对null值进行了处理,不会报任何异常。但当object为null 时,String.valueOf(object)的值是字符串”null”,而不是null。
还有一种(String)obj强转为String字符串,此种方法前提是该对象可以强制转换为String,否则报语法错误。
相关文章
- 暂无相关文章
用户点评