| 演算子 | 意味 | 例 | 答え |
| + | 加算 | 1 + 2; 2147483647 + 1; 2147483647u + 1; |
3 - 2147483648 オーバーフロー 2147483648 |
| - | 減算 | 2 - 1; -2147483648 - 1; -2147483648L - 1; |
1 2147483647 オーバーフロー -2147483649 |
| * | 乗算 | 2 * 3: 2147483647 * 2; 2147483647u * 2; |
6 - 2 オーバーフロー 4294967294 |
| / | 除算 | 2 / 1: 3 / 2; 3.0 / 2.0; |
2 1 整数同士の割り算は整数 1.5 |
| % | 剰余 | 2 % 1; 3 % 2; |
0 1 |
| 演算子 | 意味 | 例 | 答え |
| + | 符号はそのまま | +1 +(-1) |
1 -1 |
| - | 符号を反転 | -1 -(-1) |
-1 1 |
| ! | 論理否定 | !true !false |
False True |
| ~ | ビットを反転 (1の補数) |
~1 ~1u |
-2 4294967294 |
| 演算子 | 意味 | 例 | 答え |
| < | より小さい | 1 < 2 2 < 1 1 < 1 |
True False False |
| > | より大きい | 2 > 1 1 > 2 1 > 1 |
True False False |
| <= | 以下 | 1 <= 2 2 <= 1 1 <= 1 |
True False True |
| >= | 以上 | 2 >= 1 1 >= 2 1 >= 1 |
True False True |
| == | 等しい | 1 == 2 2 == 1 1 == 1 |
False Flase True |
| != | 等しくない | 1 != 2 2 != 1 1 != 1 |
True True False |
| 演算子 | 意味 | 例 | 答え |
| & | 論理積(AND) | true & true true & false 12 & 10 |
True False 8 |
| | | 論理和(OR) | true | true true | false 12 | 10 |
True True 14 |
| ^ | 排他的論理和(XOR) | true ^ true true ^ false 12 ^ 10 |
False True 6 |
| && | 条件論理積(ショートサーキット) | true & true true & false |
True False |
| || | 条件論理和(ショートサーキット) | true | true true | false |
True True |
| 演算子 | 意味 | 例 | 答え |
| ++ | オペランドに1加算される | int a = 0; Console.WriteLine(++a); Console.WriteLine(++a); Console.WriteLine(a); int b = 0; Console.WriteLine(b++); Console.WriteLine(b++); Console.WriteLine(b); |
1 2 2 0 1 2 |
| -- | オペランドから1減算される | int a = 0; Console.WriteLine(--a); Console.WriteLine(--a); Console.WriteLine(a); int b = 0; Console.WriteLine(b--); Console.WriteLine(b--); Console.WriteLine(b); |
-1 -2 -2 0 -1 -2 |
| 演算子 | 意味 | 例 | 答え |
| << | 左シフト | 15 << 1; | 30 |
| >> | 右シフト | 15 >> 1; | 7 |
| 演算子 | 意味 | 例 | 答え |
| = | 代入 | int a = 1; | 1 |
| += | 加算代入 | int a = 1; a += 2; |
3 |
| -= | 減算代入 | int a = 2; a -= 1; |
1 |
| *= | 乗算代入 | int a = 2; a *= 3; |
6 |
| /= | 除算代入 | int a = 6; a /= 3; |
2 |
| %= | 剰余代入 | int a = 3; a %= 2; |
1 |
| &= | AND代入 | bool b = true; b &= false; |
False |
| |= | OR代入 | bool b = true; b |= false; |
true |
| ^= | 排他的OR代入 | bool b = true; b ^= false; |
True |
| <<= | 左シフト代入 | int a = 15; a <<= 1; |
30 |
| >>= | 右シフト代入 | int a = 15; a >>= 1; |
7 |
| ?? | Null合体演算子 | int? a = null; int b = a ?? 1; |
1 |
| 演算子 | 意味 | 例 | 答え |
| ?: | 三項条件 | true ? 1 : 2; false ? 1 : 2; |
1 2 |
| 演算子 | 意味 | 例 | 答え |
| is | データの型を検査する | 1 is int 1.0 is int |
True False |
| as | データの型を変換する | object obj = "文字列"; string str = obj as string; Console.WriteLine(str); object obj = 123; string str = obj as string; Console.WriteLine(str); |
文字列 null |
| sizeof | 値型のサイズ(バイト単位)を取得する | int intSize = sizeof(int); int doubleSize = sizeof(double); |
4 8 |
| typeof | 型のTypeを取得する | System.Type shortType = typeof(short); System.Type intType = typeof(int); System.Type longType = typeof(long); |
System.Int16 System.Int32 System.Int64 |