↪️
Go言語で配列を使う
配列について学ぶ
✅公式の解説を翻訳して解説しています
Goでは、配列は特定の長さの要素の番号付けされたシーケンスです。一般的なGoのコードでは、スライスの方がよく使われます。
ここでは、ちょうど5個のintを保持する配列aを作成する。要素の型も長さも配列の型の一部である。デフォルトでは配列は0値であり、intの場合は0を意味する。
array[index] = value構文を使ってインデックスに値を設定し、array[index]で値を取得することができる。
組み込み関数 len は、配列の長さを返します。
配列の宣言と初期化を1行で行うには、この構文を使う。
配列型は1次元だが、型を組み合わせて多次元のデータ構造を構築することができる。
配列は、fmt.Printlnで印刷されるとき、[v1 v2 v3 ...]という形式で表示されることに注意してください。
package main
import "fmt"
func main() {
// Goの配列を定義するときは、配列の長さと型を指定する
// 以下の例では、5つのint型の要素を持つ配列を定義している
var a [5]int
fmt.Println("emp:", a)
// 配列の要素には、インデックスを指定してアクセスする
// 以下の例では、インデックス4の要素に100を代入している
a[4] = 100
fmt.Println("set:", a)
fmt.Println("get:", a[4])
// 配列の長さは、組み込み関数lenで取得できる
fmt.Println("len:", len(a))
// 配列の宣言と同時に初期化することもできる
b := [5]int{1, 2, 3, 4, 5}
fmt.Println("dcl:", b)
// var twoD [2][3]intは、2つの配列を持つ配列を定義している
var twoD [2][3]int
// forをネストさせているのは、配列の要素を1つずつ処理しているから
for i := 0; i < 2; i++ {
for j := 0; j < 3; j++ {
twoD[i][j] = i + j
}
}
fmt.Println("2d: ", twoD)
}
実行結果
emp: [0 0 0 0 0]
set: [0 0 0 0 100]
get: 100
len: 5
dcl: [1 2 3 4 5]
2d: [[0 1 2] [1 2 3]]
最後に
今回は、配列について学習してみました。要素数を数えるのに使った組み込み関数のlenがPythonに似ていて、理解しやすかったです。
Discussion