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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 刁镜元 于 2013-8-13 21:55 编辑

class Demo6{
public static void main(String[] args){  
  int a =1;
  System.out.println(a++ + a++ + a++);
  System.out.println(a++ + ++a + a++);
  System.out.println(a++ + ++a + ++a);
}
}
为什么打印结果是:
6
16
26
{:soso_e132:}

评分

参与人数 1技术分 +1 收起 理由
张俊生 + 1 神马都是浮云

查看全部评分

5 个回复

倒序浏览
a++是先用 后加 ++a是先加后用
  System.out.println(a++ + a++ + a++); (1+2+3)=6
   System.out.println(a++ + ++a + a++); (4+6+6)=16
  System.out.println(a++ + ++a + ++a);(7+9+10)=26


评分

参与人数 1技术分 +1 收起 理由
张俊生 + 1 神马都是浮云

查看全部评分

回复 使用道具 举报 1 0
首先,*++是先进行相关运算再自增,而++*是先自增,再进行相关运算
System.out.println(a++ + a++ + a++);  1+2+3  这时a为4
System.out.println(a++ + ++a + a++);  4+6+6  这时a为7
System.out.println(a++ + ++a + ++a);  7+9+10  最后a的值为10
只是推了下,可能有错误,LZ可以自己再试试~~~

评分

参与人数 1技术分 +1 收起 理由
张俊生 + 1 神马都是浮云

查看全部评分

回复 使用道具 举报
你要搞清楚a++与++a的区别:
a++:a的值进行运算以后再自增1.
++a:a自增1以后再进行运算。
这么
第一个:1+2+3=6
第二个:4+6+6=16
第三个:7+9+10=26
回复 使用道具 举报
如果问题已解决,请改成已解决
回复 使用道具 举报
懂了,坛子太给力了,这么快就有人解答我了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马