为了账号安全,请及时绑定邮箱和手机立即绑定

如果将字符串的值设置为包含对象的表达式会发生什么?

如果将字符串的值设置为包含对象的表达式会发生什么?

慕姐4208626 2021-06-30 13:04:45
我想知道如果一个字符串的值包含一个对象会调用什么函数?例如:public class A {} A a; String str = "Hello" + a;它也String.valueOf(Object)像System.out.println()这样调用吗?
查看完整描述

1 回答

?
明月笑刀无情

TA贡献1828条经验 获得超4个赞

jls 15.18.1。字符串连接运算符 +

如果只有一个操作数表达式是字符串类型,则在运行时对另一个操作数执行字符串转换(第 5.1.11 节)以生成字符串。

jls 5.1.11。字符串转换

如果引用为空,则将其转换为字符串“空”(四个 ASCII 字符 n、u、l、l)。

否则,转换就像是通过调用不带参数的引用对象的 toString方法来执行的;但如果调用 toString 方法的结果为 null,则使用字符串“null”代替。

toString 方法由原始类 Object(第 4.3.2 节)定义。许多类覆盖了它,特别是 Boolean、Character、Integer、Long、Float、Double 和 String。


查看完整回答
反对 回复 2021-07-14
  • 1 回答
  • 0 关注
  • 132 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信