我定义了一些变量:
let purpleSquareCategory: UInt32 = 1 << 0
let circleCategory: UInt32 = 1 << 1
let blueSquareCategory: UInt32 = 1 << 2
let edgeCategory: UInt32 = 1 << 31
稍后在我的代码中,我有一个临时变量,其中包含其中一个值,例如
let x = nodeCategory
有没有办法打印一条消息,说明我的预定义类别x是哪个? e.g。
print("x is variable zzz")
其中zzz是purpleSquareCategory,circleCategory等
就个人而言,我无法看到它可以完成,因为必须在运行时解决,然后变量名称不可用。
我可以通过其他方式实现我想要的吗?例如在我的类别中使用枚举或其他类型?
我正在尝试编写一个独立的帮助函数,旨在将其放入使用冲突和/或联系人的任何Swift程序中,所以如果不能写:
if category == purpleSquareCategory {print("Purple Square")}
if category == circleCategory {print("Circle")}
因为在我的函数中,我不知道已经定义了哪些类别。
答案 0 :(得分:0)
作为解决方案怎么样:)或者我在这里遗漏了什么?
var str = "Hello, playground"
let purpleSquareCategory: UInt32 = 1 << 0
let circleCategory: UInt32 = 1 << 1
let blueSquareCategory: UInt32 = 1 << 2
let edgeCategory: UInt32 = 1 << 31
print("\(purpleSquareCategory)")
let x = circleCategory
switch (x) {
case purpleSquareCategory:
print("purple")
break
case circleCategory:
print("circle")
break
case blueSquareCategory:
print("blue")
break
case edgeCategory:
print("edge")
break
default:
break
}