java中 i++ 与 ++i
来源:互联网 发布:java windows换行符 编辑:程序博客网 时间:2024/06/05 05:32
今日于国图看书,发现了些知识点,力温故知新。
先看代码:
public static void main(String[] args) {int i = 10;i = ++i;System.out.println("++i对i的赋值:" + i);int j = 10;j = j++;System.out.println("j++对j的赋值:" + j);}
输出结果
++i对i的赋值:11
j++对j的赋值:10
按照之前的知识,++前置,代表变量先进行加1操作,然后参与运算,于是++i之后,i的值为11 , 这符合逻辑。j++,表示该变量先参与运算,再对自己进行加1操作。
但是上述程序的第二行输出,明显与之前知识不符。按照之前的知识,j++之后j的值变为11,但是输出结果为11。
其实,无论++是后置还是前置,都是先将变量进行加1操作,只不过参与运算的是不是变量而已。后置++先将变量的值赋给一个变量,然后用这个变量参与运算。
j = j++ 相当于:
int temp = j ; j = j + 1;j = temp;于是,第二个输出为10。
int k= m++ * 30相当于:
int temp = m;m = m + 1;k = temp * 30;
0 0
- Java中i++与++i
- java中 i++ 与 ++i
- java中i++与++i的区别
- java中i++与++i的区别
- java中i++与++i的区别
- java中i++与++i的探讨
- java中 i++ 与 ++i 的区别
- Java中i++与++i区别
- java中i++与++i区别
- Java中 i++与++i的区别
- Java ++i与i++
- java中i++ 与 i=i++的区别
- JAVA学习【6】JAVA中i++与++i的不同
- Java--关于 i++ 与 ++i
- java中的i++与++i
- java中的i++与++i
- Java的++i与i++
- java中i++和++i
- 蓝桥杯 历届试题 饮料换购
- 最坏情况为线性时间的选择算法
- NYOJ——题目44:子串和
- 最短路径—Dijkstra算法和Floyd算法
- Android内存管理原理
- java中 i++ 与 ++i
- nyoj801 哈夫曼编码,输入有毒
- Android的内存机制和常见泄漏情形
- uva10791 Minimum Sum LCM
- Android测试系列之Instrumented Unit Test-Espresso
- CSU 1604: SunnyPig
- 国务院关于建立城镇职工基本医疗保险制度的决定
- poj3682 概率
- tcpdump&pt-query-digest分析mysql负载性能问题