热衷于在 Swift 中设置内联数组类型?

问题描述 投票:0回答:1

例如我有 2 个枚举

enum MyEnum1WithLongName {
  case a, b, c, d, e
}
enum MyEnum2WithLongName {
  case a, b, c, l, p
}

我想创建与类型内联的数组,有些像这样

if <MyEnum2WithLongName>[.a, .b, .c].contains(currentStatus) {
  // do something
}

而不是

if [
     MyEnum2WithLongName.a, 
     MyEnum2WithLongName.b, 
     MyEnum2WithLongName.c
   ].contains(currentStatus) {
  // do something
}

但是我尝试创建这样类型的数组

<MyEnum2WithLongName>[.a, .b, .c]

不适用于 swift,我尝试搜索如何做到这一点,但只找到了如何使用数组类型创建变量,因此,如果您能帮助我解决这个看似简单的问题,但我无法弄清楚,我将不胜感激我自己

ios swift generics
1个回答
0
投票

我想你正在寻找的是这个......

Array<MyEnum2WithLongName>(arrayLiteral: .a, .b, .c)

但这不是很标准。

我相信你也能做到...

if [MyEnum2WithLongName.a, .b, .c].contains(currentStatus) {
  // do something
}

但是我必须检查一下...

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