Java中+(加号)运算符的优先级是什么?
在Java教程优先级表中,plus运算符的优先级仅列出一次。但是以下Java表达式:
String unexpected = "1 + 1 = " + 1 + 1; String expected = "1 + 1 = " + (1 + 1);
System.out.println(unexpected);
System.out.println(expected);
结果如下:
1 + 1 = 111 + 1 = 2
这是否意味着加号运算符在用于连接字符串时具有较高的优先级,或者是说加号运算符的优先级对于字符串和数字没有什么不同,只是简单地从左到右求值?
回答:
+
总是 从左到右 流动 __
在您的第一个示例中String unexpected = "1 + 1 = " + 1 +
1;,string首先出现,然后是int值,因此1被视为string。
在第二个示例中String expected = "1 + 1 = " + (1 + 1);
,您使用的()
是哪个优先于+运算符。(
)
String unexpected1 =1+1+ "1 + 1 = " ; System.out.println(unexpected1);
输出将是 21 + 1 =
这里首先是int值,所以1 + 1 = 2,然后是字符串文字,所以2与1 + 1 =连接在一起
以上是 Java中+(加号)运算符的优先级是什么? 的全部内容, 来源链接: utcz.com/qa/423781.html