KDOC 348: インデックスとスライス式は違う

この文書のステータス

  • 作成
    • 2025-04-28 貴島
  • レビュー
    • 2025-05-02 貴島

概要

Go言語のスライス式。インデックスの表記と外見は似ているのだが、数字が意味するものは違う。

0 1 2
a b c
^
    ^
0 1 2 3
 a b c
^-----^
  ^---^
      ^
import "fmt"
func main() {
        arr := []string{"a", "b", "c"}
        fmt.Println(arr[0:])
        fmt.Println(arr[1:])
        fmt.Println(arr[2:])
        fmt.Println(arr[3:])

        fmt.Println(arr[:0])
        fmt.Println(arr[:1])
        fmt.Println(arr[:2])
        fmt.Println(arr[:3])
}
[a b c]
[b c]
[c]
[]
[]
[a]
[a b]
[a b c]

関連