Go言語の型、演算子、エスケープシーケンスをまとめました。
組込み型一覧
符号あり整数
| 型名 | 概要 |
|---|---|
| 基本型 | |
| string | 文字列。「"」で囲んで表現する。 |
| bool | 真偽値(true/false) |
| nビット符号あり整数 | |
| int8 | -128~127 |
| int16 | -32,768~32,767 |
| int32 | -2,147,483,648~2,147,483,647(約-21億~21億) |
| int64 | -9,223,372,036,854,775,808~9,223,372,036,854,775,807(約-922京~922京) |
| int | システム依存サイズの符号あり整数。32ビットシステムなら32ビットだが、int32やruneとの互換性はない(代入できない)。 |
| rune | 32ビット符号あり整数(int32のエイリアス)。Unicodeの1文字を格納する。「'」で囲んで表現する。runeは文字の意。 |
| nビット符号なし整数 | |
| uint8 | 0~255 |
| uint16 | 0~65535 |
| uint32 | 0~4,294,967,295(0~約43億) |
| uint64 | 0~18,446,744,073,709,551,615(0~約1845京) |
| uint | システム依存サイズの符号なし整数。 |
| uintptr | システム依存サイズの符号なし整数。ポインタの値を格納する。 |
| byte | 8ビット符号なし整数(unit8のエイリアス) |
| その他の数 | |
| float32/float64 | nビット浮動小数点 |
| complex64/complex128 | nビット複素数 |
演算子
算術演算子の四則演算、比較演算子、は他の言語と同様のため省略
| 演算子 | 概要 |
|---|---|
| 論理演算子 | |
| && | AND条件 |
| || | OR条件 |
| ! | 否定。trueとfalseを反転。 |
| 代入演算子 | |
| = | 値の代入 |
| := | 変数の定義と値の代入 |
| 送信演算子 | ※チャネルから値の送受信で利用 |
| ch <- x | 右辺の値(x)を左辺のチャネル(ch)へ送信 |
| x = <-ch | 右辺のチャネル(ch)から値をxに受信 |
| 算術演算子(ビット演算) | ※a [演算子] bの形で利用 |
| & | 論理積(AND)。※左辺と右辺の各ビットの論理積を算出。 |
| | | 論理和(OR) |
| ^ | 排他的論理和(XOR) |
| &^ | 論理積の否定(AND NOT) |
| << | 左シフト演算。右辺の値だけ左辺を算術左シフトする。 |
| >> | 右シフト演算。右辺の値だけ左辺を算術右シフトする。 |
| アドレス演算子 | ※[演算子]aの形で利用 |
| & | 右辺の変数のアドレスを取得 |
| * | 右辺の変数に格納されたアドレスを解決 |
演算子の優先順位
| 優先度 | 演算子 |
|---|---|
| 5 | *、/、%、<<、>>、&、&^ |
| 4 | +、-、|、^ |
| 3 | ==、!=、<、<=、>、>= |
| 2 | && |
| 1 | || |
エスケープシーケンス
| 文字 | 概要 |
|---|---|
| \t | タブ |
| \n | 改行 |
| \|バックスラッシュ | |
| ' | シングルクォート。文字列リテラル内では使用不可。 |
| " | ダブルクォート。ルーンリテラル内では使用不可。 |
| \b | バックスペース |
| \r | キャリッジリターン(カーソルを先頭へ戻す) |
| 使う機会なさそう | |
| \a | ベル |
| \v | 垂直タブ |
| \f | フォームフィード(紙送りをして、次の用紙の先頭から印刷) |
おわりに
素敵なGoライフを!