Noop for Swift的穷举切换声明

问题描述 投票:80回答:3

Swift需要详尽的switch语句,并且每个case都有可执行代码。有没有人找到一个好方法来处理你不想实际做任何事情的情况?我可以在那里放一个println(),但感觉很脏。

swift
3个回答
132
投票

根据the book,你需要在那里使用break

每个案例的范围不能为空。因此,您必须在每个案例标签的冒号(:)后面至少包含一个语句。如果您不打算在匹配案例的正文中执行任何代码,请使用单个break语句。


12
投票

你可以休息一下:

let vegetable = "red pepper"
var vegetableComment: String = "Nothing"
switch vegetable {
case "cucumber", "watercress":
    break // does nothing
case let x where x.hasSuffix("pepper"):
    vegetableComment = "Is it a spicy \(x)?"
default:
    vegetableComment = "Everything tastes good in soup."
}

docs修改的示例


0
投票

下面是null语句的一个选项,但可能不是一个好的解决方案。我找不到像python pass这样的语句

{}() 

对于开关盒,休息是更好的选择。

break
© www.soinside.com 2019 - 2024. All rights reserved.