!!!新人求教:为什么“aa”后面的两个相加输出会变成“66”?

public class work4

{

   public static void main(String args[])
   {
    int x=5;
    int y=2;
    System.out.println(x+y+"K");
    System.out.println(6+6+"aa"+6+6);    

}

}

输出图片

图片说明

3个回答

从左到右执行运算,在没有加到字符串时,是int类型相加,当加到字符串时,整型转为String类型,string+string还是string,然后与后面的int类型
相加时,后面int类型的需要转为string类型,因此依此相加就是输出结果。

jackiosNeal
雪地麋鹿 回复Rxiaoxing: 转换成string类型
7 个月之前 回复
Rxiaoxing
嗯哼不告诉你 回复qq_33898680: 明白了,谢谢大佬,mua(づ ̄3 ̄)づ╭❤~
7 个月之前 回复

从左到右逐项相加,顺序是这样的:
6+6 都为数值,得到数值12
12+"aa" 有一字符串,转为字符串,“12aa”
"12aa"+6 同上得到 "12aa6"
"12aa6"+6 同上得到 "12aa66"

Rxiaoxing
嗯哼不告诉你 回复qq_33898680: 明白了,谢谢大佬,mua(づ ̄3 ̄)づ╭❤~
7 个月之前 回复
qq_33898680
孤独mk 回复Rxiaoxing: 对的,其他类型与字符串相加,就会转为String类型
7 个月之前 回复
Rxiaoxing
嗯哼不告诉你 哦,意思是不是后面的6,6都转为字符串了,为什么会这样呢?
7 个月之前 回复

是这样的,整形相加得到的结果是整形,整形和字符串相加得到的是字符串,所以你前两个是整形相加,得到12,再和aa相加,就是
整形和字符串相加,得到字符串12aa,再和6相加,就是字符串和整形相加,又得到字符串12aa6,再和最后一个6相加,就是字符串和整
型相加,得到字符串12aa66.

Rxiaoxing
嗯哼不告诉你 mua',谢谢大佬,我明白了。
7 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!

相似问题

2
新人求教,WAS如何用命令启动,停止一个节点服务?项目上线,急。WAS版本为 8.5.5
2
拦截器退出登录 判断跳转的问题...求教
14
求教 为啥我的springboot没办法跳转到页面上。。。idea建的springboot项目
1
菜鸟求教:AS建立了两个活动界面,运行的时候点击按钮报错
4
(新人求教)js中的代码执行顺序是怎样的,问题如下,第12行的输出结果不是应该是[1,2,3,4,5,6,7]吗?
1
谁帮忙解释一下,为什么我改变一下查询条件的值,索引生效状态也会改变?最近在研究优化,不太熟悉!求教!
2
求教:idea无法导入maven项目
2
VS2013上MFC界面,编译成功,运行报错!!!求教
1
求教:在Qt中如何让Dialog对话框在Frame控件中显示?
1
新手求教:关于虫子吃苹果问题
2
spingboot+swagger无法显示出接口
1
关于Eclipse创建Maven项目失败的问题!!!
2
求教:在ssm框架下如何获取设备api接口传输的json数据并保存到mysql数据里?
2
Pip安装的TensorFlow包无法同步在anaconda里
2
正常的编译界面可以的,怎么修改后缀.java和源码的界面背景颜色(变成和编译界面一样的状态)
1
android.view.WindowLeaked: 窗体泄露,还是因为别的问题?
1
GlassFish 部署JavaWeb访问Servlet出现Http状态500,服务器内部错误,新手,求教
0
用move_base做导航,想改进算法,找不到源码文件,求教!!
0
gdb sqlplus 报错 Segmentation fault (core dumped)
1
vs2017我更新后怎么用自带的万能头文件。