Swift:如何检查对象是Array还是String类?

时间:2014-11-24 03:24:41

标签: objective-c arrays string class swift

我正在学习Swift语言。我有一个问题,检查对象是String或Array类:


目标c

NSObject *values = [keywords valueForKey:index];
if ([values isKindOfClass:[NSString class]]) {
    //...
}
else if([values isKindOfClass:[NSArray class]]) {
    //...
}

Swift:我无法使用 isKindOfClass 来检查String或Array类

1 个答案:

答案 0 :(得分:5)

给定从字典中提取的值:

var value: AnyObject? = keywords[index]

您可以使用is运算符检查其类型:

if value is NSString { 
    println("It's a string")
} else if values is NSArray {
    println("It's an NSArray")
}

或使用switch声明:

switch (value) {
case let value as NSString:
    println("It's an NSString")
case let value as NSArray: 
    println("It's an NSArray")
default:
    println("None of the above")
}
相关问题