黑马程序员技术交流社区

标题: 有关“+”的问题 [打印本页]

作者: rushing    时间: 2016-1-21 22:35
标题: 有关“+”的问题
原来字符串与int类型相加 和 字符与int相加是不一样的
class Test {
        public static void main(String[] args) {
                String s1 = "100";
                String s2 = "黑";
                System.out.println(s1 + 100);
                System.out.println("黑"+ 100);
                System.out.println('黑' + 100);
        }
}

作者: C.罗纳尔多    时间: 2016-1-21 23:58
新手,还不太懂{:2_31:}
作者: the_way    时间: 2016-1-22 10:30
这里+就是个连接符 并不是运算符啊
不知道我说的对不对
作者: java_zbj    时间: 2016-1-22 11:33
感觉应该是:"字符串"+int型,+看作是字符串连接符,而'黑'是char类型的,+后,会被提升会int型,'黑'有对应的ASCII码,所以和100相加是个int型的整数.不知道是不是这样理解.
作者: 晓寒轻    时间: 2016-1-22 11:48
加油吧,一点点发现,一点点惊喜、祝你越来越厉害
作者: a337136395    时间: 2016-1-22 12:09
是这样的  这里+只是作为一个连接符
作者: yehua1026    时间: 2016-1-22 12:40
当然不一样了.
作者: heima7788    时间: 2016-1-22 13:49
加油加油
作者: 我爱睡觉    时间: 2016-1-22 14:27
“+”
由符号前缀判定重载
作者: 偷懒的猫叔    时间: 2016-1-22 15:08
因为char本身就能转换成ascii。这个在毕老师的视频中有提到,是第二天,你可以去看看
作者: 怪我咯~    时间: 2016-1-24 23:47
+号使用的时候得注点意,它可以是数学上的数值相加还可以是字符串连接符
作者: 858009904    时间: 2016-1-25 00:23
就是一个连接符号啊
作者: qt520    时间: 2016-1-25 07:49
也有可能是ASCII表对应的计算
作者: WestdoorEmperor    时间: 2016-1-26 23:00
是的,,,字符底层是ASCII码,对应的是一个int类型的整数,如果与int类型相加时,输出的结果是int类型,与字符串相加时,加号起的链接作用,不做运算




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