(注意:我偶然发现了这个,所以它可能不太实用,但我只是很好奇)
我希望在递增第二个值后打印出一个值,即两个值的总和.像这样的东西:
int first = 10;
int second = 20;
System.out.println(first + ++second); //31
System.out.println(first); //10
System.out.println(second); //21
也许不是最新的代码,但它有效.但后来,我开始尝试.
System.out.println(first +++ second); //30
System.out.println(first); //11
System.out.println(second); //21
没关系;它意味着第一个在添加后增加,并且这里可以忽略空格.凉.但是之后…
System.out.println(first +++++ second); //"Invalid Argument", doesn't work
而
System.out.println(first ++ + ++ second); //31
System.out.println(first); //11
System.out.println(second); //21
工作正常,但由于某种原因,仍然不同
System.out.println(first + + + ++ second); //31
System.out.println(first); //10
System.out.println(second); //21
也许是最奇怪的,
System.out.println(first + + + + + + second); //30
System.out.println(first); //10
System.out.println(second); //20
那么这里发生了什么?何时忽略运算符之间的空格,何时不是?为什么我可以写“”,没有任何问题?
谢谢!