色々な演算子の説明
  
算術演算子
| 演算子 | 働き | 使い方 | 意味 | 
|---|
| + | 加算 | a = b + c | b と c を足した値を a に代入 | 
| – | 減算 | a = b – c | b から c を引いた値を a に代入 | 
| * | 乗算 | a = b * c | b と c を掛けた値を a に代入 | 
| / | 除算 | a = b / c | b を c で割った値を a に代入 | 
| % | 余り | a = b % c | b を cで割った余りを a に代入 | 
代入演算子
| 演算子 | 働き | 使い方 | 意味 | 
|---|
| = | 代入 | a = b | b の値を a に代入 | 
| += | 加算して代入 | a += b | a = a + b と同じ | 
| -= | 減算して代入 | a – = b | a = a – b と同じ | 
| *= | 乗算して代入 | a * = b | a = a * b と同じ | 
| /= | 除算して代入 | a /= b | a = a / b と同じ | 
| %= | 余りを代入 | a %= b | a = a % b と同じ | 
インクリメント演算子
| 演算子 | 種類 | 使い方 | 意味 | 
|---|
| ++ | 前置 | x = ++a; | aを+1した後 x に代入 | 
| 〃 | 後置 | x = a++; | xにaを代入した後に aを+1 | 
デクリメント演算子
| 演算子 | 種類 | 使い方 | 意味 | 
|---|
| — | 前置 | x = –a; | aを-1した後 x に代入 | 
| 〃 | 後置 | x = a–; | xにaを代入した後に aを-1 | 
比較演算子
| 演算子 | 使い方 | 意味 | 
|---|
| == | a == b | a と b が等しい | 
| != | a != b | a と b が等しくない | 
| < | a < b | a が b より小さい | 
| > | a > b | a が b より大きい | 
| <= | a <= b | a が b 以下 | 
| >= | a >= b | a が b 以上 | 
条件が 成立した 場合は  bool型の「 true (真、OK )」、成立しない場合は 「 false(偽、NG)」を返す。
論理演算子
| 演算子 | 働き | 使い方 | 意味 | 
|---|
| & | AND | ( a >= 10 ) & ( a < 50 ) | 10以上 かつ 50未満 | 
| | | OR | ( a == 10 ) | ( a ==100 ) | 10 か 100 | 
| ^ | XOR | ( a == 10 ) ^ ( b ==10 ) | どちらかだけ 10 | 
| ! | NOT | ! ( a == 10 ) | 10でない。 | 
| ~ | 補数 | sbyte  a = ~10 | a は -11 | 
排他的論理和(XOR)
 
補数
10 は sbyte型の 2進数で表すと(0000 1010)  で  補数は 
   ~ (0000 1010) = (1111 0101)
で、(1111 0101) を 10進数に直すと -11 となります。
短絡評価
| 演算子 | 働き | 使い方 | 意味 | 
|---|
| && | AND | ( a >= 10 ) && ( a < 50 ) | 10以上 かつ 50未満 | 
| || | OR | ( a == 10 ) || ( a ==100 ) | 10 か 100 | 
& と | には 短絡評価である && と || があります。
( a >= 10 ) && ( a < 50 ) の 場合 ( a >= 10 ) が false であれば  ( a < 50 ) を評価せず false を返します。 つまり 評価の為の判定を省略します。
また、( a == 10 ) || ( a ==100 ) の 場合 ( a == 10 ) が true の場合 ( a ==100 ) を評価せず true を返します。
シフト演算子
| 演算子 | 働き | 使い方 | 意味 | 
|---|
| << | 左シフト | a = 10 << 1 | 10 を左に1つシフト。a は 20になる | 
| >> | 右シフト | a = 10 >> 1 | 10 を右に1つシフト。a は 5になる | 
10 を8ビットの2進数 として表記すると (0000 1010) 
1つ左シフトとは 左に 1 の位置をずらす(0001 0100)= 20(10進数)
1つ右シフトとは 右に 1 の位置をずらす(0000 0101)=  5(10進数)
       
      
      
      
コメント