请考虑以下情形:
enum XYZ { case X case Y case Z } let x = XYZ.X switch x { case .X,.Y where false: println("x or y") case .Z: println("z") default: println("default") break }
即使where子句为false,此代码段也会打印x或y.
没有发现任何提及它.任何人都知道如何重构这个而不重复第一种情况下的代码?
我现在使用了fallthough,但where子句现在重复了
解决方法
CONDITION仅与.Y绑定的守卫.
case .X where false,.Y where false:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。