Go の range はマップとスライスを反復処理できますが、次のような数値の範囲を反復処理する方法があるかどうか疑問に思いました。
for i := range [1..10] {
fmt.Println(i)
}
それともRubyのようにGoで整数の範囲を表現する方法はあるのでしょうか?クラス範囲?
ベストアンサー1
Go 1.22 (2024 年 2 月リリース予定) からは、次のように記述できるようになります。
for i := range 10 {
fmt.Println(i+1)
}
(Go で整数の範囲を指定すると、0 からその整数より 1 小さい値まで反復されます)。
Go 1.22 より前のバージョンでは、慣用的なアプローチは次のように for ループを記述することです。
for i := 1; i <= 10; i++ {
fmt.Println(i)
}