dakjhflkjdsfk 2016-05-14 17:29 采纳率: 100%
浏览 1216
已采纳

JAVA中的整形基本运算

public class Demo1 {
public static void main (String [] args) {
int x = 2;
System.out.println((x++)/3);
}
}
为什么运算结果是0,而不是1?
跪谢~

  • 写回答

9条回答

  • 毕小宝 博客专家认证 2016-05-14 22:55
    关注

    首先,这个影响整个问题的结果的操作是x++,它是先使用x然后再加的,等价于

     System.out.println((x)/3);//此处x=2
     x=x+1;
    

    其次,除法操作,整数的除法返回值还是int类型,2/3返回的值取整数还是0的。
    最后,要想得到1,必须让x>=3,如++x,是先将x+1然后再使用的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(8条)

报告相同问题?

悬赏问题

  • ¥20 求数据集和代码#有偿答复
  • ¥15 关于下拉菜单选项关联的问题
  • ¥20 java-OJ-健康体检
  • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
  • ¥15 使用phpstudy在云服务器上搭建个人网站
  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况
  • ¥15 画两个图 python或R