【发布时间】:2014-12-01 00:11:21
【问题描述】:
我最近开始学习 Swift,遇到了一个 Swift 开关,例如,开关在 Swift 中似乎必须是详尽无遗的。
这会导致编译器错误
let nums = 1...5
for num in nums
{
switch num
{
case 2:
// Do Something
// Will throw a comilation error unless default: was added
}
}
在 C# 中,这是完全可以接受的
var nums = new[] {1, 2, 3, 4, 5};
foreach (var num in nums)
{
switch (num)
{
case 2:
// Do Something
break;
}
}
这只是基础设施偏好还是有其他原因?
【问题讨论】:
-
您是在问为什么需要在 swift 中添加默认值,或者为什么不需要在 c# 中添加?
-
是的,我觉得很奇怪,为什么 C# 允许这样做而 Swift 却不允许,因为 switch 似乎是每种语言中非常基本的关键字
标签: c# swift switch-statement