黑马程序员技术交流社区

标题: 关于优先级,哪位大神能给讲解一下 [打印本页]

作者: king2042    时间: 2014-3-12 19:23
标题: 关于优先级,哪位大神能给讲解一下
回头复习,看到视频里讲到提升优先级如System.out.println("5+5"+5+5)和System.out.println("5+5"+(5+5))

作者: 孔丽阁    时间: 2014-3-12 19:37
运算符优先级如下表从上往下依次递减

运算符优先级.png (2.78 KB, 下载次数: 66)

运算符优先级.png

作者: 榨菜    时间: 2014-3-12 20:33
"5+5"+5+5  --->"5+5"是字符串 所以后面+5后也变成字符串。----得到结果是  5+555
"5+5"+(5+5)----> 因为有括号,所以先算括号里面的 5+5=25,然后"5+5"再加上25  -----得到结果是 5+525
作者: 韩基鑫    时间: 2014-3-12 21:23
字符串数据和任何数据使用“+”都是相连接的意思,而非加减法中的意思,打上括号表明括号里的优先级高先运算,再与字符串相连,最后都会成为字符串的
作者: 战狼    时间: 2014-3-12 22:55
()的权限最高,最先执行。
作者: 刘一博    时间: 2014-3-13 00:49
System.out.println("5+5"+5+5)
由于不存在优先级问题,所以一次执行,认为是String与int类型的拼接,结果应为  “5+555”
System.out.println("5+5"+(5+5))
由于存在()优先运算括号内的,默认为int类型则先做加法,再由String与它拼接,结果应为  "5+510"




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