我知道Maximal Munch Rule不是 Java
特定的,但我的问题只涉及 Java
和 Java 编译器
。
我也看了一些相关的回答:
但我仍然无法完全掌握Maximal Munch 的概念及其应用。
如以下代码:
int i = 3;
int j = +i;
System.out.println(i); //3
System.out.println(j); //3
语句 int j = +i;
是如何被 Java 编译器
解释的,为什么会这样?
另一个例子,int j =++i;
也可以,但我不确定如何。
我试图自己理解这个概念,但我做不到。
我想知道它是如何工作的、它背后的概念以及 Java 编译器
如何处理此类语句。
最佳答案
加号可以用作:
1 + 2
二进制数字加法运算符"A"+ "B"
二进制字符串连接运算符++i
一元递增运算符+i
一元正号运算符(不常见,-i
一元负号运算符更常见)
由于正号运算符实际上不做任何事情,因此可以将其删除。
// All the same
int j = + +i;
int j = +i;
int j = i;
int j = +(+(i));
int j = +(i);
查看此处了解更多信息:https://docs.oracle.com/javase/tutorial/java/nutsandbolts/op1.html
关于java - 了解 Java 中的最大蒙克?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32800475/