A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© rushing 中级黑马   /  2016-1-21 22:35  /  810 人查看  /  13 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

原来字符串与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);
        }
}

13 个回复

正序浏览
是的,,,字符底层是ASCII码,对应的是一个int类型的整数,如果与int类型相加时,输出的结果是int类型,与字符串相加时,加号起的链接作用,不做运算
回复 使用道具 举报
qt520 中级黑马 2016-1-25 07:49:35
13#
也有可能是ASCII表对应的计算
回复 使用道具 举报
就是一个连接符号啊
回复 使用道具 举报
+号使用的时候得注点意,它可以是数学上的数值相加还可以是字符串连接符
回复 使用道具 举报
因为char本身就能转换成ascii。这个在毕老师的视频中有提到,是第二天,你可以去看看
回复 使用道具 举报
“+”
由符号前缀判定重载
回复 使用道具 举报
加油加油
回复 使用道具 举报
当然不一样了.
回复 使用道具 举报
是这样的  这里+只是作为一个连接符
回复 使用道具 举报
加油吧,一点点发现,一点点惊喜、祝你越来越厉害
回复 使用道具 举报
感觉应该是:"字符串"+int型,+看作是字符串连接符,而'黑'是char类型的,+后,会被提升会int型,'黑'有对应的ASCII码,所以和100相加是个int型的整数.不知道是不是这样理解.
回复 使用道具 举报
这里+就是个连接符 并不是运算符啊
不知道我说的对不对
回复 使用道具 举报
新手,还不太懂{:2_31:}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马