m0_68938898 2022-03-31 15:56 采纳率: 100%
浏览 49
已结题

java中的自增运算符问题。

img

求牛人解答一下,这个问题很懵逼,搞了一晚上,始终搞不懂是啥原理,括号在里面起作用嘛?

  • 写回答

2条回答 默认 最新

  • 老坛酸菜吃鸭子 2022-03-31 16:26
    关注

    System.out.println(a+1+(++a)+ a++);
    //分成三步[a+1] + [(++a)] + [a++]
    //[a+1] 先执行a+1=8
    //++a 先a=a+1再执行,此时a的值为8 再执行a++
    //a++ 先执行再a=a+1,即此时a的值还是8,三个8相加得24
    //那个括号在这里不是起到优先级的作用,是用来分隔加号的,主要搞清楚a++与++a的区别

    System.out.println(a+1+++a+(a++));这个输出语句中,你放到类中运行试试,是运行不了的,在数字1那里会报错 运算 ++/-- 的自变量无效,因为你根本无法判断那两个加号是属于谁的

    img

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

报告相同问题?

问题事件

  • 系统已结题 4月12日
  • 已采纳回答 4月5日
  • 创建了问题 3月31日