程序一:
int c = 10;
int d = c++;
System.out.println(c);
System.out.println(d);
程序二:
int c = 10;
c = c++;
System.out.print(c);
问题:
程序2中的2个C是不是同一个C?
程序2的++运算执行了吗?怎么执行的?在何时执行的?
程序一中,输出了c自增后的结果,在程序2中,想输出c自增后的结果怎么输出?
int c = 10;
int d = c++;
System.out.println(c);
System.out.println(d);
程序二:
int c = 10;
c = c++;
System.out.print(c);
问题:
程序2中的2个C是不是同一个C?
程序2的++运算执行了吗?怎么执行的?在何时执行的?
程序一中,输出了c自增后的结果,在程序2中,想输出c自增后的结果怎么输出?
解决方案 »
- 为何出现错误码
- 理行承诺,xuender(徐强) 来接分。
- 组件重绘问题?
- java中如何获得当前系统运行信息
- jbuilder8的编辑器问题
- (RMI) java.lang.ClassNotFoundException: access to class loader denied ?????
- 我准备跳槽到另一家公司,辞职信已上交一个星期,但现公司至今未给我回复,我该如何?
- 请教:java在unix/linux下的运行速度如何?还是像在windows下那么慢吗?比如jbiulder的linux版,速度如何?我没有试过,谢
- 中国商品交易中心技术部招聘Java程序员。
- android编程遇到的一个代码,请问double后面的...是什么意思?
- java swing窗口下的绘图
- java如何实现从远程FTP服务器定时更新相关文件
c++执行了 c = c++; //先右运算,把右边表达式的值(表达式的值就是c的值)压栈保存,然后执行c++,此时右边运算结束,然后左边预算,把右边的表达式的值出栈,然后赋给c,这样就造成了c的值又变回原来的值了
要想达到1的效果,改称 c=c+1或者直接c++
++运算执行了,c=c++首先执行c++,c增加,然后将c未加1前的值传给c,c知又回到未加1签了。把c++换成++c就ok
++c。是先加后用。int c=0;if(++c>0){“进来”}
+1 正解。你那个c = c++ ,怎么说呢,c在被创建出来之后就被赋值了,然后你的这个自增运算c++
修改了c的那个位置上的值,接着你又将它赋给了c,那感觉没什么意义,因为仅仅是覆盖罢了。
直接c++ ; 不就行了吗?
等号的右边是个表达式: c++
而这个表达式的值是5,此时c的值是6了,但是,问题来了,你的运算还没结束,你要给等号左边的c赋值,那就是把5赋给c了
++c就是c的值先加1;在输出c的值