ほとんどのoperatorはC++との違いを余り意識することなく使用できます。
Assignment (=, +=, -=, *=, /=, %=)
a=1;
このstatementは変数aに値1を代入しています。assignment operator (=)の左辺をleft value、右辺をright valueとし、left valueは変数であるべきで、right valueには全てのexpression (定数、変数、operation、それらの複合)を用いることが出来ます。
right valueを最初に求め、left valueへ代入するという順番で代入は解決されます。つまり、
a=a+1;
この場合、right value (a+1)が求められ、その値がaへと代入されることになり、aは元の値より+1された値となります。
a+=1;
a-=1;
a*=1;
a/=1;
a%=1;
上の例はそれぞれ、
a=a+1;
a=a-1;
a=a*1;
a=a/1;
a=a%1;
と同等の意味を持ちます。
Logical (&&, ||)
a&&b
a||b
これらのexpressionはboolean valueが結果として求められます。
&& はAND operatorであり、a且つbの場合にのみtrueという結果になります。
||はOR operatorであり、aまたはbの場合にtrueという結果になります。
この二つのoperatorではleft valueの値が最初に求められ、次にright valueの値を求めるという順番となります。left valueとright valueはそれぞれboolean valueを求めるexpressionとなります。
Relational and Equality (==, !=, <, >, <=, >=)
a==b;
a!=b;
a<b;
a>b;
a<=b;
a>=b;
これらのoperatorはboolean valueを結果として返します。
Operator | true condition |
---|---|
== | aとbが等しい |
!= | aとbが等しくない |
> | aがbより大きい |
< | aがb未満 |
>= | aがb以上 |
<= | aがb以下 |
Level | Operator | Description |
---|---|---|
1 | ++, --, !, - | Unary |
2 | *, /, % | Multiplicative |
3 | +, - | Additive |
4 | <, >, <=, >= | Relational |
5 | ==, != | Equality |
6 | && | Logical AND |
7 | || | Logical OR |
8 | =, +=, -=, *=, /=, %= | Assignment |
Next: Tutorial 05. Control Structures
Prev: Tutorial 03. Constants