加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – println(String s)vs println(Object o)

发布时间:2020-12-15 04:53:04 所属栏目:Java 来源:网络整理
导读:在我看来, PrintStream.print(Object x) 和 PrintStream.println(Object x) 与 PrintStream.print(String x) 和 PrintStream.println(String x) 相同. 两个都有明显的理由吗?他们有什么不同吗? API-docs的可读性?效率? (使用自动装箱,我怀疑即使采用原语
在我看来,PrintStream.print(Object x)PrintStream.println(Object x)PrintStream.print(String x)PrintStream.println(String x)相同.

两个都有明显的理由吗?他们有什么不同吗? API-docs的可读性?效率?

(使用自动装箱,我怀疑即使采用原语作为参数的打印方法也是多余的……但是这些方法早于自动装箱功能,因此可以解释.)

解决方法

他们不做同样的事情:

print(Object x)调用String.valueOf(x),返回:

(obj == null) ? "null" : obj.toString();

所以我们有一个额外的toString()方法.

结果是一样的,因为String.toString()返回这个.但是为了便于API的使用,不应该强迫用户理解这些细节.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读