より良いエンジニアを目指して

1日1つ。良くなる!上手くなる!

Swiftのswitch文

Swiftのソースレビューをしていたら、switchはふーん、そうなんだーと思いました。

以下のように書きます。

import Foundation

let num = 1
var text = ""
switch num {
case 1:
    text = "one"
default:
    text = "other"
}

print(text)

breakは宣言しなくても次のcase,defaultの前で処理が終わります。

続行したいならfallthoughを宣言しますが、これは基本的には使うなという意味でしょう。

switch文の問題は、このbreakしないと処理が落ちてしまうと言われる点です。とはいえ、私は、それが問題になったことは、全くと言っていいほどないのですが。

あとは、インデントですね。breakはなくていいのは、他の言語でもありましたが、switchとcaseが同じインデントというのは、私は初めて見ました。

ダメでもないですが、ざっと調べたところ、これは意図不明でした。

google.github.io

参考記事

qiita.com