System.out.println(“相当于”+2*10.5+(4-2)*4.0); 得出的答案是 相当于21.08.0 想知道21.08.0是怎么出来的 以及这里string连接的优先级和运算的优先级
就是“相当于”,然后2*10.5=21.0,然后(4-2)*4.0=8.0,然后这三个当成字符串连起来的结果
字符串认识+号,不认识*和()。所以先完成*和()运算,再进行字符串的+运算。+是按顺序执行,所以不会先执行后面的两个数值的+,而是从左到右执行字符串的+
从左到右加载执行的。类似System.out.println(a+b+c);
因为a是字符串,b是数字。最后得到a+b字符串。即相当于21.0
上面的整体可以看做是d
然后d是字符串,c是数字。最后得到的是d+c字符串。即21.08.0
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632