学习Java – 5

只是稍微学一下递增。
还有,也稍微学一下复合赋值运算符。
虽然也可以在做算术运算时学习,但这是另外一个故事了。

自增

在中文中,有一个叫做递增运算符(++)的东西。
通过在变量的前后加上 “++” ,可以使该变量加上 “1”。

「++a」和「a++」几乎等同于「a=a+1」。

但是,有人告诉我这两个动作微妙地不一样~
对于这个意思我一直无法理解。

也许是因为我单独看了「++a」或「a++」才不行的。

通过使用与增量变量不同的变量,可能会产生差异,可能会意识到一些事情。

先执行「a=a+1」,然后将结果放入「b」。

b = ++a;

如果我们想象计算顺序的话,感觉会是”b=(a=a+1)”吧?
另一方面,下面这个是先将”a”的值赋给”b”,然后再执行”a=a+1″。

b = a++;

如果想象成计算顺序的话,就是“从a开始,a=a+1”的感觉吗?

先试试执行一下,看看结果有什么不同。
首先,将“++a”放在常规形式中。

int a, b;

a = 1;
b = ++a;

System.out.println("a = " + a);
System.out.println("b = " + b);

・因为先执行了”a=a+1″,所以”a=2″。
・因为”b=a”,所以取的是2,所以”b=2″。

pic002.JPG

如果输入”a++”是下一个情况

int a, b;

a = 1;
b = a++;

System.out.println("a = " + a);
System.out.println("b = " + b);

・因为先执行了“b=a”,所以“b=1”
・接着执行了“a=a+1”,所以“a=2”

pic001.JPG

根据情况,可能会选择使用”++a” 和 “a++”。

顺便说一下…
「1」减去的操作是递减,运算符是「–」。

复合赋值运算符

与其说是类似于递增,不如说是计算式的简略写法?就这样想着吧。

「a=a+5」也可以写成「a+=5」。

这个“+=”看起来是一个复合赋值运算符。

・与其注意顺序执行“=+”,不如使用“+=”。
・还有“+=”,“-=”,“*=”,“/=”等等。
・还有“>>=”,“>>>=”之类的,但是现在先忘掉,一次性记不住。

我将大致记住了大约的内容后,先进行一次操作确认。
在平常的基本形式后面添加↓并执行。

int a = 1, b = 1;

a += 5;
b = b + 5;

System.out.println("a = " + a);
System.out.println("b = " + b);

确认「+=」也会得到相同的结果。

pic003.JPG

直到有空闲时间之前,可能主要使用”a=a+5″的方法。

这次就到这里吧。

bannerAds