问答详情
源自:3-2 Java中的算术运算符

age1是渣男吗?--age1已经自减了,最后出来age1是23,可是为什么其他运算的时候还是按24去运算呢

http://img3.mukewang.com/5f100e0a000176c012630382.jpg

如图所示,为什么这样子呢age1是渣男吗一时一个样的,它对着newAge和自己一个人的时候就是23,可对sum、avg、minus的时候就说自己是24。所以说age1初心是24和sum、avg、minus的时候初心不变,可是因为和newAge在一起的时候因为newAge改变了它是吗?可是为什么最后age1说自己是23而不是24呢,因为它更爱newAge吗?

提问者:学渣乙 2020-07-16 16:33

个回答

  • MYJ605
    2022-05-09 22:06:11

    一开始我也是很不明白,当我在代码中输入

    int newAge1=age--;

    System.out.println("age1新的年龄”+age1);

    后,终于明白了--在左边和在右边的区别:

    --在左边,标识自减后(23),把新的自减后的值给了newAge1和age1

    --在右边,age1把自己的值(24)给了newAge1后,然后运算的自减(23),那么age1现在的值等于自减后的值。

    希望能帮助到你。

  • qq_慕九州4247520
    2020-09-20 12:58:11

    程序的运行是按顺序来的,你把自减放到前面去结果就变了!由上往下依次运行

  • 学渣乙
    2020-07-16 17:49:12

    自问自答哈哈哈我终于想明白了http://img.mukewang.com/5f101e890001ef2d13490404.jpg

    我试着调换了一下原来int newAge=--age1的顺序,把它调到第一个进行运算,发现后来结果都变了,终于明白了。因为之前这一行在最后,所以sum、avg、minus还是用原来age1=24的值去运算的,age1是在最后才变成23的不影响之前的运算。

    结论:age1不算是渣男,age1在遇到初恋sum、第二任avg、第三任minus之前都是保持初心没有变的都是24。直到遇见了第四任newAge,newAge改变了它,它才是24。凡事都有个先来后到,age1先跟前三任已经发生了关系,再和最后一任发生关系的,所以age1跟前三任爱情的结果并不受第四任的影响,所以用24运算,但age1最后表达自己的时候会说自己是23,因为最后它确实和newAge发生了关系也改变了自己,它所自己23也是诚实的表现。所以age1不算渣男。

    看来计算机语言比人类的语言都实诚很多啊?

  • 学渣乙
    2020-07-16 16:43:45

    是的,它就是渣男