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]
関連
- KDOC 326: スライス式の後ろは含まないの訂正。含まないというよりは、違うものとして認識するべきだった