如何在Swift中为开关盒创建一个noop块?

Boo*_*oon 38 swift

如何在Swift中为开关盒创建一个noop块?Swift强制您在您的情况下至少拥有一个可执行语句,包括默认语句.我试过把空{}但是Swift不会那么做.这意味着Swift的switch case在if-else之间不能完全翻译,反之亦然,因为在if-else中你可以在条件中包含空代码.

例如

switch meat {

   case "pork":
     print("pork is good")

   case "poulet":
     print("poulet is not bad")

   default:
     // I want to do nothing here
}
Run Code Online (Sandbox Code Playgroud)

ale*_*son 62

default:
  break
Run Code Online (Sandbox Code Playgroud)

Apple在本文中讨论了这个关键字.在这里也看到了.

尽管Swift中不需要break,但您仍然可以使用break语句来匹配和忽略特定的大小写,或者在该大小写完成执行之前中断匹配的大小写.

  • 也可以写:`default:()` (8认同)
  • @mrfour `()` 是一个空元组,因此该语句只是被评估并且什么都不做。不过,`default: break` 可能更容易理解。 (5认同)
  • @neave,有没有官方文档解释为什么“default: ()”有效? (2认同)