NSString stringWithFormat很慢

在Objective-C中,方法stringWithFormat:似乎是非常慢,实际上是我们的一个应用程序(我们使用探查器找出来)的一个大瓶颈。 有没有一种方法来优化或使用更快的C代码?

是的,使用sprintf在c http://www.cplusplus.com/reference/cstdio/sprintf/之后,用[NSString stringWithUTF8:];推送NSString中的char *

例:

 char cString[255]; sprintf (cString, "%d", 36); NSString* OCstring = [[NSString alloc] initWithUTF8String:cString]; 

如果你正在做大量的string操作和操作 – 听起来你可能会这样做,而NSString真的成为你的应用程序的瓶颈,我build议尝试使用C + +的string需要,而不是C.

苹果承认,虽然NSString是伟大的,事实上,它是顶级的,使他们的iOS自动更正algorithm,他们遇到了类似的问题, NSString太慢,计算和比较这么多事情。 然后他们转换到C ++,并获得他们所需的所有性能。

只是一个build议。 你一定要提出一些代码,我很惊讶这发生在你身上,除非你正在做一些很棒的新function!