斯威夫特? objc替代方案

时间:2018-02-05 08:43:56

标签: objective-c

ObjC是否有类似swift默认值的东西?

let a = b.name ?? "Empty"

我有一个带参数的对象,如果它们不是nil我必须检查所有参数,如果是,则将它们设置为某个默认值。

1 个答案:

答案 0 :(得分:2)

这是大多数编程语言中的三元运算符。您可以在此处找到相关详细信息 - What does the question mark and the colon (?: ternary operator) mean in objective-c?

在目标C ??替换为?:请按照链接进行操作,或者这是一个简短的示例,如果有这些帮助的话 -

NSString *msgFullString = [NSString stringWithFormat:@"Message: %@", msg ? : @"Unknown error"];

您还可以使用if(b.name)检查值是否存在。如果b.name有值,它将返回true;如果b.name为nil,则返回false。

希望这会有所帮助......