Go(Golang)の「演算子と式(operators and expressions)」は、プログラムの制御やデータの操作に不可欠な構文要素です。Goでは、算術演算子、比較演算子、論理演算子、ビット演算子、代入演算子などが提供されており、これらは式(expression)を構成して値を計算します。以下に分類ごとに詳しく説明します。
1. 算術演算子(Arithmetic Operators)
数値同士の計算に使われます。
| 演算子 | 説明 | 例 |
|---|---|---|
+ |
加算 | a + b |
- |
減算 | a - b |
* |
乗算 | a * b |
/ |
除算(整数除算も含む) | a / b |
% |
剰余(余り) | a % b |
注意: / による整数同士の除算は、小数点以下が切り捨てられます。
2. 比較演算子(Comparison Operators)
値を比較して、真(true)または偽(false)を返します。
| 演算子 | 説明 | 例 |
|---|---|---|
== |
等しい | a == b |
!= |
等しくない | a != b |
< |
より小さい | a < b |
<= |
以下 | a <= b |
> |
より大きい | a > b |
>= |
以上 | a >= b |
3. 論理演算子(Logical Operators)
ブール値(true, false)に対して使用されます。
| 演算子 | 説明 | 例 |
|---|---|---|
&& |
論理積(AND) | a > 0 && b > 0 |
| ` | ` | |
! |
否定(NOT) | !a |
4. ビット演算子(Bitwise Operators)
整数のビットレベルでの演算に使われます。
| 演算子 | 説明 | 例 |
|---|---|---|
& |
AND | a & b |
| ` | ` | OR |
^ |
XOR | a ^ b |
&^ |
AND NOT(差分) | a &^ b |
<< |
左シフト | a << 2 |
>> |
右シフト | a >> 2 |
5. 代入演算子(Assignment Operators)
| 演算子 | 説明 | 例 |
|---|---|---|
= |
代入 | a = 10 |
+= |
加算して代入 | a += 2 |
-= |
減算して代入 | a -= 2 |
*= |
乗算して代入 | a *= 2 |
/= |
除算して代入 | a /= 2 |
%= |
剰余を計算して代入 | a %= 3 |
&=, ` |
=, ^=, <<=, >>=` など |
ビット演算と組み合わせた代入も可 |
6. その他の演算子
アドレスとポインタ演算子
| 演算子 | 説明 | 例 |
|---|---|---|
& |
変数のアドレスを取得 | p := &x |
* |
ポインタの参照 | val := *p |
7. 式(Expressions)とは
式とは、値を計算するコードの最小単位です。たとえば以下はすべて式です。
式は基本的に値を返すことが特徴で、if, for, switchなどの制御構文でも頻繁に使われます。
まとめ
Goの演算子と式は、プログラムの計算・比較・条件判定などのロジック構築において基本となる重要な要素です。型が厳密なGoでは、適切な演算子の使い方と型の整合性に注意を払いながら記述することが重要です。
生成日:2025/05/03