码迷,mamicode.com
首页 > 编程语言 > 详细

java的++i和i++的分析

时间:2018-12-24 23:30:41      阅读:250      评论:0      收藏:0      [点我收藏+]

标签:for   结果   int   class   stat   rgs   bsp   str   想法   

关于自增自减,先来一道题,大家尝试着做一下:

1     public static void main(String[] args) {
2         
3         int a=2;
4         int b=a++;
5         int c=--a;
6         System.out.println("a:"+a+",b:"+b+",c:"+c);
7     }

答案在这里:
a:2,b:2,c:2
看完答案,不知道大家有没有什么感觉,再来一道吧:

1     public static void main(String[] args) {
2         
3         int i=0;
4         for(int j=0;j<10;j++){
5             i=i++;
6         }
7         System.out.println("i:"+i);
8     }

下面是答案:
i:0
猜对了吗,如果没猜对,好好想想,你一定会猜对的,什么?你猜对了,
大神啊,那么请大神接招:

1     public static void main(String[] args) {
2         
3         int i=5;
4         int j=(i++)+(++i)+(i--)+(--i);
5         System.out.println("i:"+i+",j:"+j);
6     }

答案来也:
i:5,j:24
怎么样,有没有什么感觉,别着急,下面是分析:

1         //i++==> i=6;j=5
2         //++i==> i=7;j=7
3         //c--==> i=6;j=7
4         //--d==> i=5;j=5
5         //5+7+7+5=24
6         //6+7+6+5=24

但是有两个24,结果到底是哪一个呢,别急,看完下面的题你就知道答案了:

1     public static void main(String[] args) {
2         
3         int i=5;
4         int j=(i++)+(++i);
5         System.out.println("i:"+i+",j:"+j);
6     }

这是正确答案:
i:7,j:12
猜对了吗,看我的分析:

1         //i++==> i=6;j=5
2         //++i==> i=7;j=7
3         //6+7=13
4         //5+7=12

明白了吧 >O.O<
这篇文章说是分析,但其实只是给大家出了几道题,如果大家有什么想法,可以给我留言哦。

 

java的++i和i++的分析

标签:for   结果   int   class   stat   rgs   bsp   str   想法   

原文地址:https://www.cnblogs.com/littleorange7/p/10171363.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!