【Swift 2】switch内にてguardでbreakする
記事内に広告を含む場合があります。記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。
Swift 2のguard内ではreturnしないと文法エラーとなりますが、実はswitch内ではbreakでもOKです。
switch内のguardでbreak
実際にはこんな感じ。
let n = getSomething() switch n { case 100...200: let a = calcSomething(n) guard a == 200 else { break } doSomething(n) case 200...300: doSomething(n) case 300...400: doSomething(n) default: print("default") }
caseの中において特定のケースで処理を打ち切りたいという場合に使えそうです。
continue, throw, fatalError()なども使える
returnやbreakだけでなく、continue, throw, fatalError()などの@noreturnなメソッドも使えます。
guard let a = aa else { continue }
guard let a = aa else { fatalError("invalid data") }
@akio0911はこう思った。
guardをうまく使ってEarly Exitさせると、見通しの良いコードが書けます。積極的に使っていきたいところです。


関連記事
この記事が気に入ったら「いいね!」しよう
Follow @arlife_now
Twitterで更新情報をゲット!