我正在学习OCPJP考试,所以我必须了解Java的每一个奇怪的细节。 这包括前后增量操作符应用于variables的顺序。 下面的代码给了我奇怪的结果: int a = 3; a = (a++) * (a++); System.out.println(a); // 12 答案不应该是11吗? 或者,也许13? 但不是12! 跟进: 以下代码的结果是什么? int a = 3; a += (a++) * (a++); System.out.println(a);
我目前正在学习C ++,而前一段时间我也学习了这个增量。 我知道你可以使用“++ x”来使之前的增量和“x ++”来完成。 不过,我真的不知道什么时候使用这两种…我从来没有真正使用过“++ x”,而且到目前为止,事情一直很好 – 所以,我应该什么时候使用它? 例如:在for循环中,何时最好使用“++ x”? 另外,有人可以解释不同的增量(或递减)是如何工作的? 我真的很感激。
我试图更深入的后置和预增量器,但有点卡住了下面的expression式: public static void main(String[] args) { int i = 0; i = i+=(++i + (i+=2 + –i) – ++i); // i = 0 + (++i + (i+=2 + –i) – ++i); // i = 0 + (1 + (3 + 2) – 1); // i = 0 + (6 – 1); System.out.println(i); // Prints […]
在for循环中, ++i和i++是否有区别? 这只是一个语法的东西?
我们有问题是在C中的 i++和++i之间有性能差异吗? C ++的答案是什么?
你能向我解释这个Java代码的输出吗? int a=5,i; i=++a + ++a + a++; i=a++ + ++a + ++a; a=++a + ++a + a++; System.out.println(a); System.out.println(i); 两种情况下的输出都是20
从下面或这里的程序,为什么最后一次调用System.out.println(i)打印值7 ? class PrePostDemo { public static void main(String[] args){ int i = 3; i++; System.out.println(i); // "4" ++i; System.out.println(i); // "5" System.out.println(++i); // "6" System.out.println(i++); // "6" System.out.println(i); // "7" } }