Goの仕様では、break
とcontinue
はkeywordsです。
break default func interface select
case defer go map struct
chan else goto package switch
const fallthrough if range type
continue for import return var
break
はループから脱出します。ループを止める方法の一つです。
continue
は次のイテレーションへと移動します。どのような動きかみてみましょう。
package main
import (
"fmt"
)
func main() {
x := 83 / 40
y := 83 % 40
fmt.Println(x, y)
}
注: %
は算術演算子(Arithmetic operator)です。_剰余_を返します。
continue
に戻ります。1
から100
までイテレートして偶数のみを表示するとした時、方法としてはfor
, if
, continue
が挙げられます。
package main
import (
"fmt"
)
func main() {
x := 0
for {
x++
// ループを脱出(ループ停止)
// xが100以上なら
if x > 100 {
break
}
// xを2で割った剰余が0でないなら
// 次のイテレーションへ
// (xが偶数でないなら)
if x%2 != 0 {
continue
}
fmt.Println(x)
}
fmt.Println("done.")
}