对i++与++i的理解

 

有关自增自减运算在这里通过一个小程序来演示这两个算的功能,自减运算i--和--i同理。

1、i++

 1 class Demo{
 2     public static void main(String[] args){
 3         int i=3;
 4         
 5         System.out.println(i);
 6         System.out.println(i++);
 7         System.out.println(i);    
 8     
 9     }
10 }

运行结果为 

1 3
2 3
3 4

由此可以得知i++运算对变量i进行增加1的操作,但是i++这个表达式的值为变量i 的值,要把握此处的理解要注意理解“表达式”的概念。

 

i++区别于++i

2、++i

以下代码演示++i的运算

 1 class Demo{
 2     public static void main(String[] args){
 3         int i=3;
 4         
 5         System.out.println(i);
 6         System.out.println(++i);
 7         System.out.println(i);    
 8     
 9     }
10 }

运算结果如下 

1 3
2 4
3 4

 

3、用以下代码再深入理解

 1 class Demo{
 2     public static void main(String[] args){
 3         int i=3,j=10;
 4         if(i==i++){
 5             System.out.println("相等");
 6         }else{
 7             System.out.println("不相等");
 8         }
 9         
10         if(j==++j){
11             System.out.println("相等");
12         }else{
13             System.out.println("不相等");
14         }
15     }
16 }

 运行结果为

1 相等
2 不相等

 4、总结

“i++”与"++i" 这两个表达式包含两个步骤。

第一步,先输出这个表达式的值,"i++"的值是"i"的值,"++i"的值是"i+1"的值;

第二步,对"i"进行操作,"i++"与"++i"都进行"i=i+1",即改变"i"的值,使其值加1。

posted @ 2018-01-22 20:02  张子游zy  阅读(669)  评论(0编辑  收藏  举报