栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

为什么+在Java中使用Strings?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

为什么+在Java中使用Strings?

+
不是操作员重载的示例。
+
在语言中被内置为合并运算符 算术加法运算符。

这意味着用Java编写程序的人不能重载运算符,但是就Java语言的语法而言,它

+
被定义为连接和加法运算符。

编辑

它适用于其他类,如

Integer
Double
由于自动装箱。

如果您看一下执行字符串连接的Java程序的字节码,您会发现它创建

StringBuilder
并使用了该
append()
方法。Java编译器会看到
+
运算符,并意识到操作数是字符串而不是原始类型(如
int
)。

如果查看执行整数加法的程序的字节码,您会发现它使用

iadd
指令执行整数加法。这是因为编译器意识到该操作的
+
操作数是整数。

至于做这样的事情

Integer i = 4
,字节码会表明你确实在做
Integer i =Integer.valueOf(4)
。这称为自动装箱。稍后,当您执行
i +p
i
p
都为type的操作时
Integer
,生成的字节码将显示您正在执行
i.intValue() +p.intValue()
,这两个方法的返回类型均为
int
(实际的字节码指令为
iadd
)。

这就是为什么

+
工作
Integer
,即使他们不是实际的基本类型。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/595803.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号