#7 Goで学ぶ配列の基本

Goには、複数の値をまとめて扱うためのデータ構造として、「配列」と「スライス」という2種類の仕組みがあります。この記事では、それぞれの違いと基本的な使い方を解説します。

配列(固定長)

Goの配列は、大きさがあらかじめ決まっていて、後から変更できません。

var fruits [3]string = [3]string{"りんご", "みかん", "ぶどう"}

スライス(可変長)

実際の開発では、大きさを自由に変えられる「スライス」を使うのが一般的です。

fruits := []string{"りんご", "みかん", "ぶどう"} fruits = append(fruits, "メロン")

配列の宣言と似ていますが、大きさの数字を書かない点が違いです。値を追加するには`append()`という関数を使います。

要素にアクセスする

配列・スライスどちらも、0から始まる添字でアクセスします。

fmt.Println(fruits[0])

Goならではの注意点

Goの`append()`は、Pythonの`append()`のように直接中身を追加するのではなく、「追加された新しいスライスを返す」という書き方をします。そのため、`fruits = append(fruits, "メロン")`のように、必ず結果を元の変数に代入し直す必要があります。この代入を忘れると、追加した値が反映されないので注意しましょう。

まとめ

Goには固定長の「配列」と可変長の「スライス」があり、実用上はスライスを使う場面が多くなります。`append()`の結果を代入し直す、という書き方の癖を覚えておきましょう。


本ページはプロモーションを含みます。

参考書籍(PR)

Goをもっと学びたい方には「Go言語入門」がおすすめです。

コメント

このブログの人気の投稿

#11 Rustで学ぶエラーハンドリングの基本

#16 TypeScriptで学ぶ辞書型(マップ)の基本

#19 Goで学ぶテスト(単体テスト)の基本