iPhone - 哪个会产生最有效/更小的代码?

时间:2011-10-26 14:50:37

标签: objective-c

其中哪一个会产生最有效/更小的二进制代码?

:此

int sum = 0;
for (NSNumber * oneObj in objArray) {
    if ([oneObj intValue] > 10)
        sum += [oneObj intValue];
    else
        sum -= [oneObj intValue];
}

还是这个?

int sum = 0;
for (NSNumber * oneObj in objArray) {
    sum += ([oneObj intValue] > 10) ? oneObj : -oneObj;
}

以这种浓缩形式编写IF会有什么不同吗?

1 个答案:

答案 0 :(得分:2)

编译后的版本将完全相同。

这是表达同一事物的两种不同方式