public class Demo1 { public static void main (String [] args) { int x = 2; System.out.println((x++)/3); } } 为什么运算结果是0,而不是1? 跪谢~
收起
当前问题酬金
¥ 0 (可追加 ¥500)
支付方式
扫码支付
支付金额 15 元
提供问题酬金的用户不参与问题酬金结算和分配
支付即为同意 《付费问题酬金结算规则》
首先,这个影响整个问题的结果的操作是x++,它是先使用x然后再加的,等价于
System.out.println((x)/3);//此处x=2 x=x+1;
其次,除法操作,整数的除法返回值还是int类型,2/3返回的值取整数还是0的。 最后,要想得到1,必须让x>=3,如++x,是先将x+1然后再使用的。
报告相同问题?