Go言語で配列の初期化をする方法

Go言語で配列の初期化をする方法

Go言語では配列の初期化を行うためにいくつかの方法があります。
配列は固定サイズのデータ構造であり、そのサイズは宣言時に決定します。
以下に、Go言語での配列の初期化方法を詳しく説明します。

1. 明示的な初期化

配列を初期化する際に、要素を明示的に指定して初期化する方法です。
以下のコードは、5つの整数要素を持つ配列を初期化する例です。

package main

import "fmt"

func main() {
  // 明示的な初期化
  var a [5]int = [5]int{1, 2, 3, 4, 5}

  fmt.Println(a)  // 出力: [1 2 3 4 5]
}

ここでは、配列aのサイズと初期値を一度に指定しています。
配列のサイズと初期値を指定することで、配列を初期化することができます。

2. デフォルト値による初期化

配列を宣言するだけで初期化することも可能です。
この場合、配列の要素はその型のデフォルト値で初期化されます。
例えば、整数型の配列ではすべての要素が0で初期化されます。

package main

import "fmt"

func main() {
  // デフォルト値による初期化
  var a [5]int

  fmt.Println(a)  // 出力: [0 0 0 0 0]
}

この方法では、配列の各要素はその型のゼロ値で初期化されます。
整数型の場合は0、文字列型の場合は空文字列""などがデフォルト値となります。

3. 配列の部分初期化

配列を部分的に初期化することもできます。
この場合、指定した値以外の要素はデフォルト値で初期化されます。
以下の例では、配列の最初の2つの要素だけを指定しています。

package main

import "fmt"

func main() {
  // 部分的な初期化
  var a = [5]int{1, 2}

  fmt.Println(a)  // 出力: [1 2 0 0 0]
}

この場合、aの最初の2つの要素が1と2に初期化され、残りの要素はデフォルト値の0に初期化されます。

4. 配列の短縮構文

Go言語では、配列のサイズを省略する短縮構文も提供されています。
以下のコードは、サイズを省略しながら初期値を設定する例です。

package main

import "fmt"

func main() {
  // 短縮構文による初期化
  a := [5]int{1, 2, 3, 4, 5}

  fmt.Println(a)  // 出力: [1 2 3 4 5]
}

この方法では、配列のサイズは初期値の数によって自動的に決まります。

5. 配列を変数に代入して初期化

配列を変数に代入してから初期化する方法もあります。
以下のコードでは、配列を変数aに代入してから値を設定します。

package main

import "fmt"

func main() {
  var a [5]int

  // 値を設定
  a[0] = 1
  a[1] = 2
  a[2] = 3
  a[3] = 4
  a[4] = 5

  fmt.Println(a)  // 出力: [1 2 3 4 5]
}

この方法では、まず配列を宣言し、その後で各要素に値を設定します。
配列のサイズを指定し、各要素に値を代入することで初期化できます。

これらの方法を利用して、Go言語では様々な方法で配列を初期化することができます。
用途や状況に応じて、適切な方法を選択してください。