NSMutableString性能

时间:2016-07-27 18:16:51

标签: ios objective-c

我想创建一个字符串。根据条件,我必须添加一些额外的字符串。在这种情况下,首选使用?是根据条件创建两个不同的字符串还是创建可变字符串以根据条件附加新字符串?

EX

if(a==1)
{
    String = "apple seed" 
}
else
{
    String = "apple"
}

或者

NSMutableString *string ;

string = @"apple"; 

if( a==1)
{
    [string appendString:@"seed"]
}

1 个答案:

答案 0 :(得分:1)

字符串文字与@"apple"一样,是一个编译时常量,因此将字符串文字分配给类型为NSString *的变量是一种廉价的操作。

所以对于您的特定示例,第一个选择两个简单赋值中的一个,而第二个可以执行简单赋值和方法调用 - 这显然需要花费更多时间。

那说"多一点"在现代计算机上并不长。谨防过早优化;编写一个清晰易懂的代码要好得多,如果需要,可以关注自己的细节表现(这是借口来编写糟糕的算法或故意编写错误的代码)。

HTH