【Go言語 超入門コース】08.配列|変数を箱。配列をロッカーに例えて解説します【プログラミング初心者向け入門講座】

Go超入門コース

この記事の執筆・監修

キノコード
キノコード

テクノロジーアンドデザインカンパニー合同会社のCEO。
日本最大級のプログラミング教育のYouTubeチャンネル「キノコード」や、プログラミング学習サービス「キノクエスト」を運営。
著書「あなたの仕事が一瞬で片付くPythonによる自動化仕事術」や、雑誌「日経ソフトウエア」や「シェルスクリプトマガジン」への寄稿など実績多数。

はじめに

こんにちは。キノコードです。
「【5分レッスン】Go超入門コース#08 配列」について説明します。

配列とは?

配列とは、複数のデータを格納することができるデータ型です。
変数のレッスンでは、変数は「箱」と説明しました。
例えるなら、変数は1つのデータしかいれらない「箱」なのに対して、配列は複数のデータを入れることができる「ロッカー」です。
1列の配列のことを1次元配列といい、2列以上ある配列は多次元配列といいます。
配列の1つ1つの箱のことを要素といい、箱の数を要素数といいます。
配列のそれぞれの要素には、場所の情報が割り当てられています。
データが住んでいる住所のようなものです。
この住所には、インデックスという番号というものが割り当てられています。
インデックスのことを「添え字」といったりもします。このレッスンでは、インデックスという名前で進めていきます。
一番左のインデックスは0から始まります。1から始まるわけではないので注意です。
そのため、1番最初のインデックスは「0」、2番目のインデックスは「1」、3番目は「2」、4番目は「3」といったように、インデックスは配列が格納されている「順番 - 1」となっています。

配列の宣言

書き方のきまりは次のとおりです。
変数 := [要素数]データ型{データ1,データ2,…}
配列を扱う変数名を書きます。配列のあとにコロン、イコール。角括弧の中に要素数、データ型。波括弧に格納するデータを書きます。
これだけではわかりにくいと思うので、ソースコードを見ていきましょう。

package main
import "fmt"
func main() {
  a := [3] string {"sato", "suzuki", "takahashi" }

  fmt.Println(a[0])
  fmt.Println(a[1])
  fmt.Println(a[2])
}

このコードは、aという変数に、’sato’,'suzuki','takahashi'という3つのデータを代入する配列を作るものです。
コードの意味を説明していきます。
最初に変数を記述します。
次に、コロン、イコール、要素数を書きます。データ型のStringを書いて配列に代入したいデータを記述します。
変数aのあとにインデックスを書いて、データを表示します。
表示されました。

配列の要素の変更方法

package main
import "fmt"
func main() {
  a := [3] string {"sato", "suzuki", "takahashi" }
  a[1] = "tanaka"

  fmt.Println(a[0])
  fmt.Println(a[1])
  fmt.Println(a[2])
}

配列のデータを変更してみましょう。
要素を指定して代入します。
配列の2番目の鈴木さんを田中さんにしてみます。
2番めなので角括弧に書く要素数は1です。
変更されているか確認してみましょう。
suzukiさんがtanakaさんに変わっています。
要素数を省略して書くこともできます。
配列変数 := […]データ型{データ1,データ2,….}
ソースコードを見ていきましょう。

package main
import "fmt"
func main() {
  a := [...] string {"sato", "suzuki", "takahashi" }
  a[1] = "tanaka"

  fmt.Println(a[0])
  fmt.Println(a[1])
  fmt.Println(a[2])
}

最初に変数a、コロン、イコールを書きます。角括弧の中にドットを3つ書きましょう。
こうすることにより、要素数を省略することができます。
表示させてみましょう。
先ほどと同じように、’sato’,'tanaka','takahashi'が表示されました。

多次元配列

package main
import "fmt"
func main() {
  a := [2] [2] string{{"sato", "suzuki"}, {"takahashi", "tanaka"}}

  fmt.Println(a[0][0])
  fmt.Println(a[0][1])
  fmt.Println(a[1][0])
  fmt.Println(a[1][1])
}

2次元の配列を作ってみましょう。
2次元配列の場合は、かっこの中にかっこを書き、そこに代入するデータを記述します。
多配列の要素についてです。
2次元配列の場合は、角括弧を2回使用すれば良いです。
satoさんは、1つ目の配列の、1番目です。なので、0の0です。
suzukiさんは、1つ目の配列の、2番目です。なので、0の1です。
tanakaさんは、2つ目の配列の、1番目です。なので、1の0です。
takahashiさんは、2つ目の配列の、2番目です。なので、1の1です。
表示してみましょう。
satoさん、suzukiさん、takahashiさん、tanakaさんが表示されました。

KinoCode チャンネル

YouTubeで毎日動画配信しています。
動画は3分間なので、
 ・通勤時間
 ・お昼休み
 ・お手すきのとき
 ・寝る前
など手軽に視聴できます。
 
ちょっとしたインプットにどうぞ!
 
▼チャンネル登録はこちらからどうぞ。
未経験からはじめるPython学習「キノクエスト」 キノクエスト
  • スキルアップしたいけど何からはじめればよいかわからない…
  • プログラミングスクールに入りたいけど料金が高い…
  • プログラミングを学んでも業務やキャリアに活かせるか不安…

キノクエストは、このような悩みを持つ方にぴったりのプログラミング学習サービスです。
国内最大級のプログラミング学習系YouTubeチャンネル「キノコード」が提供しているから、未経験者にもわかりやすく質の高い学習体験を実感していただけます。

キノクエスト