A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Ak-47   /  2016-3-30 00:52  /  3731 人查看  /  41 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

i=1;
首先 i = i++;   i++ = 1;i++把值赋给i  也就是i=1;
所以i的值是1;
回复 使用道具 举报
结果为 i = 1;
回复 使用道具 举报
这个必须是1 呀
回复 使用道具 举报
++在前是先自增后运算  ++在后是先运算再自增
回复 使用道具 举报
结果是1,因为i++操作会把值先保存在内存中,然后自加操作,再把操作前保存的值赋值给左面
回复 使用道具 举报
i=i++; 它的机制是 :
   int backup =i ;
       i = i+1 ;
       i = backup ;
                           
回复 使用道具 举报
结果是1:++在参与混合运算时,如果++放在变量后面,则先参与运算后改变值,所以会把1先复制给变量i
回复 使用道具 举报
i =i++    是先在内存中开辟一块空间储存i的原值1,接着i自增变成2,再将内存中的i的值1赋值给i。所以无论如果++符号在后面无论运算多少次i的值不变。
回复 使用道具 举报
Ak-47 中级黑马 2016-3-31 01:27:37
29#
看似很简单,其实涉及到很深啊{:2_32:}
回复 使用道具 举报
Poul 中级黑马 2016-3-31 10:23:47
30#
i=i++相当于temp=i;i=i+1;i=temp;
去这个帖子看看http://bbs.itheima.com/thread-284605-1-1.html
回复 使用道具 举报
结果为1,,因为i=i++;  先使用i的值并赋值给了i=1,
回复 使用道具 举报
搞清楚  i++和++i就好了..............
回复 使用道具 举报
1,先把i赋值给i,然后i在自增1
回复 使用道具 举报
这个题经典,顶一个
回复 使用道具 举报
1,从右往左,读作把i赋值给i,定义int i=1,再自增
回复 使用道具 举报
1啊,++在后边,就是先赋值   再自增
回复 使用道具 举报
加油吧 多敲代码~~~~~~~~~~
回复 使用道具 举报
我理解的是涉及两个知识点
1,++(后)先运算再自增
2,赋值运算符优先级最低
也就是说,i++先把i的值1取出做运算(把这个1即为a),然后i自增变成2
然后赋值,把a(值为1)赋给i
结果i=1
回复 使用道具 举报
这个主要是i++ 与++i的区别 分清就好
回复 使用道具 举报
class Demo {
        public static void main(String[] args) {
                int i = 1 ;
                                int a1=1;        
                a1= i++ ;
                                 System.out.println(a1);
                System.out.println(i);
                               
                       
        }
}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马