我只是想知道这行代码是什么意思,因为我以前从未见过它。提前致谢
- (NSString *)suit
{
return _suit ? _suit : @"?"; /* precisely this part */
}
我只是想知道这行代码是什么意思,因为我以前从未见过它。提前致谢
- (NSString *)suit
{
return _suit ? _suit : @"?"; /* precisely this part */
}
它只是一个调用suit
返回 NSString 的函数。
如果 _suit 不为零(_suit ? _suit
,则此函数将返回 _suit 执行此操作。
否则,它会返回@"?" (这样:@"?"
做)。
(something ? somethingElse : somethingElseAgain) 仅表示如果某事为真,则返回 somethingElse,否则返回 somethingElseAgain。
换句话说,它是一种简单的内联方式来编写:
if (something) {
return somethingElse;
}
else {
return somethingElseAgain;
}
- (NSString *)suit
{
if(_suit)
return _suit;
return @"?"
}
那就是三元运算符。它是简写
if (_suit)
_suit;
else
@"?";