int num = 0;
for(int i =0;i<100;i++){
num = num++;
}
System.out.println(num);
num的值为什么是0,而其中num++没有起作用,有知道的大神嘛,求解答?
========
更
首先可以确定的是++的优先级是高于=(赋值运算符)的。
而赋值运算的操作原理是先将=右边的值放入到一个临时内存中,对于这个临时内存的处理过程中就单纯的处理num++,num++是有两个动作的(先使用放入到临时变量中,然后自增)其实就是将num为3的值赋值给num然后再进行的++,这样的话临时内存中还是3,最后其实是将3赋值给了最前面的num;