map型

package main

import "fmt"

func main() {
    m := map[string]int{"apple": 100, "banana": 200}

    // 要素全部表示
    fmt.Println(m)
    fmt.Println(m["apple"])

    // 要素追加
    m["banana"] = 300
    fmt.Println(m)
    m["new"] = 500
    fmt.Println(m)

    // ないものを取り出そうとすると0になる
    fmt.Println(m["nothing"])

    // boolean型も返す
    v, ok := m["apple"]
    fmt.Println(v, ok)

    // boolean型も返す
    v2, ok2 := m["nothing"]
    fmt.Println(v2, ok2)
}

出力

API server listening at: 127.0.0.1:4056
map[apple:100 banana:200]
100
map[apple:100 banana:300]
map[apple:100 banana:300 new:500]
0
100 true
0 false
Process exiting with code: 0

byte型

package main

import "fmt"

func main() {
    b := []byte{72, 73}
    fmt.Println(b)
    // stringにキャスト ASCIIコード
    fmt.Println(string(b))

    c := []byte("HI")
    fmt.Println(c)
    fmt.Println(string(c))
}
[72 73]
HI
[72 73]
HI

関数

package main

import "fmt"

// 関数
func add(x int, y int) {
    fmt.Println("add function")
    fmt.Println(x + y)
}

func main() {
    add(10, 20)
}
add function
30

複数の戻り値をInt型で返す

package main

import "fmt"

// 返り値を右にかく
func add(x int, y int) (int, int) {
    return x + y, x - y
}

func main() {
    r1, r2 := add(10, 20)
    fmt.Println(r1, r2)
}

30 -10

<スポンサーリンク>

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)