2

我在这里看到了几个问题/答案,它们表明在 Objective-C 中获取整数的字符串表示的最佳方法是使用[NSString stringWithFormat:@"%d", x]. 恐怕我的 C/C++ 程序员很难相信我想为这样一个简单的任务使用所有格式化代码。也就是说,我假设stringWithFormat需要解析格式字符串以查找我可能使用的所有不同类型说明符、字段宽度和选项,然后它必须能够解释可变长度的参数列表并使用格式说明符强制x转换为适当的类型,然后经历一个漫长的转换过程,在此过程中考虑有符号/无符号值和否定。

不用说在 C/C++ 中我可以简单地使用itoa(x)which 只做一件事并且非常有效地完成它。

我没有兴趣争论一种语言相对于另一种语言的相对优点,而只是问一个问题:难以置信的强大功能[NSString stringWithFormat:@"%d", x] 真的是在 Objective-C 中完成这项非常非常简单的任务的最有效方法吗?好像我在用大锤敲碎花生。

4

2 回答 2

0

你可以使用itoa()任何一个或者如果它让你感觉更好,但我不会担心它,除非你确定这是一个性能问题。+[NSString stringWithUTF8String:] -[NSString initWithBytes:length:encoding:+[NSString stringWithCString:encoding:]

于 2013-07-17T19:59:15.963 回答
-1

您也可以使用描述方法。它将它装箱NSNumber并转换为NSString.

int intVariable = 1;

NSString* stringRepresentation = [@(intVariable) description];
于 2013-07-17T20:03:25.500 回答