Objective-C:哪个更有效 - 测试IF NOT还是再次设置变量?

2 performance if-statement objective-c

变量的当前值可以是"X"或"Y".

函数需要确保它是"X".

一般来说 - 比如说C整数 - 效率更高:

"if not X, then set to X"

"just set it to X anyway"
Run Code Online (Sandbox Code Playgroud)

当"值"是必须重新创建的Objective-C(不可变)对象时,这会改变吗?

在这两种情况下,这是每个人都同意的事情,还是一个有争议的问题?

Chr*_*s S 5

无论如何设置它会更有效率,除非X包含大量数据或者你在一个大循环中.

  • 它还取决于不同变量值的概率.这就是为什么我认为最好(a)忘记这个问题,除非你追逐几毫秒,或者(b)如果你是这样的话,可以对代码进行分析. (2认同)
  • 我希望我能记住是谁先发表了这个观察结果:"这就像是理发减肥". (2认同)