対象: ネストが深いループから一気に抜け出す(Swift)ネストが深いループから一気に抜け出す場合、それがメソッドであればreturnしてしまったり、あるいはフラグを立てて複数のループを抜けたりするだろう。Swiftの場合にはラベル付きステートメント(Labeled statement)とbreakで簡単に深いネストのループから一気に抜け出すことができる。 // ラベル付きステートメント outside: for i in 0..<3 { for j in 0..<3 { print("i = \(i) j = \(j)") if i > 0 { // 外側のforをbreak break outside } } } このコードの実行結果は以下だが、iが1になったところでoutsideラベルが付いた外側のforまで一気にbreakしている。 i = 0 j = 0 i = 0 j = 1 i = 0 j = 2 i = 1 j = 0 (2015/02/06) () ループをFor文→For-In文に修正。
Copyright© 2004-2019 モバイル開発系(K) All rights reserved.
[Home]
|