📘

GOを1から学ぶ #3

に公開

初めに

こんにちは!技術スタック的には、フロントよりですが、GOを学ぶ機会があったので、その記録を取りたいと思いこの記事を書いてます。(初心者のため優しい目で見てください)
今回は、以下について簡単にまとめます。

  • 配列の基本
  • スライスについて
  • mapについて

配列について

配列の基本的な使い方は以下のようになる。

var 変数名 [長さ]

具体的な例

package main

import "fmt"

func main() {
    var a [3]int  // int型の配列を宣言(長さ3)

    a[0] = 90     // 1番目の要素に90を代入
    a[1] = 80     // 2番目の要素に80を代入
    a[2] = 70     // 3番目の要素に70を代入

    fmt.Println(a[1])  // 2番目の要素(80)を表示
}

実行結果
80

スライスについて

まず、スライスとは 「配列のように使えるけど、サイズが可変」 の便利なデータ構造のこと。

スライスの基本的な作り方

[]の中に要素数を指定しないとスライスとなる。

package main

import "fmt"

func main() {
    numbers := []int{10, 20, 30}
    fmt.Println(numbers) // [10 20 30]
}

要素の追加

要素の追加は、append関数を使う

package main

import "fmt"

func main() {
    nums := []int{1, 2}
    nums = append(nums, 3, 4)
    fmt.Println(nums) // [1 2 3 4]

}

mapについて

Goのmapとは?

map[キーの型]値の型

キー(Key) に対して、値(Value) を紐づけて保存でき管理できる。

package main

import "fmt"

func main() {
    // mapの作成
    studentScores := map[string]int{
        "Alice": 90,
        "Bob":   85,
        "Carol": 78,
    }

    // 値の取得
    fmt.Println("Aliceの点数:", studentScores["Alice"])

    // 新しいキーと値を追加
    studentScores["David"] = 92

    // 値の上書き
    studentScores["Bob"] = 88

    // 値の削除
    delete(studentScores, "Carol")

    // 最終的なmapの内容を確認 
     fmt.Println("最終的なstudentScores:", studentScores)
}

実行結果
Aliceの点数: 90
最終的なstudentScores: map[Alice:90 Bob:88 David:92]

Discussion