黑马程序员技术交流社区

标题: 字符串和int相加还是string型? [打印本页]

作者: 梁秋瑜    时间: 2013-5-25 19:09
标题: 字符串和int相加还是string型?
String s= “join”+3;
这个编译为什么不会出错,求解

作者: 神之梦    时间: 2013-5-25 19:16
莪是来看大神解答的
作者: 翟宝海    时间: 2013-5-25 19:40
在java中,运算符''+''可用来实现字符串的连接;其他类型的数据与字符串进行"+"运算时,将自动转换成字符串。
作者: 霜冰刃雪    时间: 2013-5-25 20:01
同LS, 其实所谓字符串和int(也包括其他类型的数据)“相加”,实际上是字符串的连接,API文档的String类中有这样的描述“Java 语言提供对字符串串联符号("+")以及将其他对象转换为字符串的特殊支持~~”,好像是java中的特殊机制吧~~
作者: yepat    时间: 2013-5-25 20:37
我试了一下没有出错啊 输出结果为join3

作者: clp    时间: 2013-5-25 21:14
String s= "join"+3;  这个式子中,底层调用了默认方法,其中字符串加上其他类型的数据,自动回先将加号后面的数据转化成字符串,在进行合并
作者: 王靖远    时间: 2013-5-26 00:10
本帖最后由 王靖远 于 2013-5-26 00:11 编辑

+号有2个功能:一个是算术运算符,一个是字符串连接符。两个不同的数据类型怎么能进行算术运算,两个不是都是字符串怎么能进行字符串连接。这里是把int类型的转成了字符串类型。

作者: 黑马一刘昭    时间: 2013-5-26 00:36
大神真多,楼上讲的都很好,我只是知道其一,努力!
作者: student    时间: 2013-5-26 11:20
对于字符串,加号运算符("+")是字符串连接符号。
java虚拟机会将加号后面的内容都变成字符串,和前面的字符串进行连接。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2