C#の式と演算子を完全理解|基本から実践までやさしく解説
この記事でわかること
- C#における「式」とは何かがわかる
- 演算子の種類と役割をひとつずつ理解できる
- 実際のコード例を通して、どう使うのかがイメージできる
- 他の言語経験者がつまずきやすいポイントも整理できる
式とは何か
C#における「式(Expression)」とは、値を生み出すもののことです
たとえば、次のコードはすべて式になります
1 + 2
x * 3
a == bこれらは実行されると、必ず何らかの値になります1 + 2 は 3、a == b は true または false というように、結果が返ってくるのが式の特徴です
一方で、if 文や for 文そのものは式ではなく「文(Statement)」と呼ばれます
C#では「式」と「文」をきちんと区別して考えることがとても大切です
演算子とは何か
演算子は、式の中で計算や比較、代入などを行うための記号です
int result = 10 + 5;この例では
=は代入演算子+は加算演算子
というように、それぞれ役割を持っています
C#では演算子の種類がとても豊富なので、用途ごとに分けて見ていくと理解しやすくなります
算術演算子
数値の計算を行うための演算子です
| 演算子 | 内容 |
|---|---|
+ | 加算 |
- | 減算 |
* | 乗算 |
/ | 除算 |
% | 余り |
int a = 10;
int b = 3;
int sum = a + b; // 13
int mod = a % b; // 1特に注意したいのは除算です
整数同士の割り算は、小数点以下が切り捨てられます
int result = 10 / 3; // 3小数を扱いたい場合は double や float を使う必要があります
代入演算子
値を変数に代入するための演算子です
int x = 5;基本は = ですが、C#では省略形もよく使われます
| 演算子 | 内容 |
|---|---|
+= | 加算して代入 |
-= | 減算して代入 |
*= | 乗算して代入 |
/= | 除算して代入 |
int count = 0;
count += 1; // count = 1シンプルですが、ループ処理などでは頻繁に登場するので早めに慣れておくと楽です
比較演算子
値同士を比較し、結果として true または false を返します
| 演算子 | 内容 |
|---|---|
== | 等しい |
!= | 等しくない |
> | より大きい |
< | より小さい |
>= | 以上 |
<= | 以下 |
int age = 20;
bool isAdult = age >= 18;ここでよくあるミスが、= と == の混同です= は代入、== は比較なので、意味はまったく違います
論理演算子
条件を組み合わせるときに使う演算子です
| 演算子 | 内容 |
|---|---|
&& | 論理積(AND) |
| || | 論理和(OR) |
! | 論理否定(NOT) |
int age = 25;
bool hasTicket = true;
bool canEnter = age >= 18 && hasTicket;条件が増えてくると一気に出番が増えるので、if 文とセットで理解するとわかりやすくなります
インクリメント・デクリメント演算子
値を1増やす、または1減らすための演算子です
int i = 0;
i++; // 1
i--; // 0前置と後置で挙動が変わる点もC#の特徴です
int a = 5;
int b = a++; // b = 5, a = 6最初は少しややこしく感じますが、慣れるととても便利です
演算子の優先順位
式の中では、演算子ごとに実行される順番が決まっています
int result = 1 + 2 * 3; // 7乗算が先に評価されるため、結果は 7 になります
順番を変えたい場合は、かっこを使います
int result = (1 + 2) * 3; // 9複雑な式になるほど、かっこを使って明示的に書くのがおすすめです
まとめ
- 式は「値を生み出すもの」
- 演算子は式の中で計算や比較を行うための記号
- 算術、代入、比較、論理など、用途ごとに整理すると理解しやすい
- 優先順位や型による挙動の違いには注意が必要
式と演算子は、C#のあらゆるコードの土台になります
ここをしっかり理解しておくと、条件分岐やループ、クラス設計まで一気に読みやすくなっていくはずです