本帖最后由 黄秋 于 2012-2-1 05:54 编辑
苏格拉底的弟子 发表于 2012-1-31 19:19
楼主,你要先清楚 String 和 StingBuffer 的区别
1,String专门定义不变字符串,而StingBuffer用来定义可变 ...
sop(sb) 打印出来的肯定是地址值--- 这说法欠妥,print 会自动调用 toString方法,StringBuffer 的toString() 是返回里面内容的字符串;print 数组会输出一些难懂的怪字符,但这也是调用 toString方法,只是它的是 Object 的toString():
Object 类的 toString 方法返回一个字符串,该字符串由类名(对象是该类的一个实例)、at 标记符“@”和此对象哈希码的无符号十六进制表示组成。换句话说,该方法返回一个字符串,它的值等于:getClass().getName() + '@' + Integer.toHexString(hashCode())
原因:StringBuffer(String也是) 有自己的toString(),数组没有自己的。 |