如果左侧表达式为零,则不评估右侧表达式

时间:2014-09-02 06:44:44

标签: ios objective-c swift

我在iOS应用程序中编写了一些组件。如果用户选择关闭此功能,我将从我的功能中返回零​​。

//self.currentRequest would be nil if user has turned off the feature.
     self.currentRequest.startTimeStamp = [NSDate date];
        self.currentRequest.url = [request.URL absoluteString];

我希望右侧表达式不应该评估左侧表达式是否为零。 我不想使用if-else包装代码,因为代码分布在函数上以记录时序。 我阅读了Swift文档,看起来像Swift有if let语法来做到这一点。如何在Objective-C中完成这项工作?

1 个答案:

答案 0 :(得分:0)

也许这个?但如果startTimeStamp是只读的,这将无效。

self.currentRequest.startTimeStamp = self.currentRequest.startTimeStamp ? [NSDate date] : nil;

虽然,你最好的选择可能只是一个if-case。为什么不想使用它?

if(self.currentRequest)
{
   //Do your stuff....
}

也许这个? (如果在void函数内部)

if(!self.currentRequest) return;