如何转换NSInteger
为NSString
数据类型?
我尝试了以下方法,其中月份是NSInteger
:
NSString *inStr = [NSString stringWithFormat:@"%d", [month intValue]];
NSInteger 不是对象,您将它们转换为long
,以匹配当前 64 位架构的定义:
NSString *inStr = [NSString stringWithFormat: @"%ld", (long)month];
Obj-C 方式 =):
NSString *inStr = [@(month) stringValue];
AnNSInteger
具有stringValue
即使使用文字也可以使用的方法
NSString *integerAsString1 = [@12 stringValue];
NSInteger number = 13;
NSString *integerAsString2 = [@(number) stringValue];
非常简单。不是吗?
var integerAsString = String(integer)
简单的方法:
NSInteger value = x;
NSString *string = [@(value) stringValue];
在这里,@(value)
将给定NSInteger
的NSNumber
对象转换为您可以为其调用所需函数的对象,stringValue
.
编译时支持 for arm64
,这不会产生警告:
[NSString stringWithFormat:@"%lu", (unsigned long)myNSUInteger];
你也可以试试:
NSInteger month = 1;
NSString *inStr = [NSString stringWithFormat: @"%ld", month];
给出了答案,但认为在某些情况下,这也是从 NSInteger 获取字符串的有趣方式
NSInteger value = 12;
NSString * string = [NSString stringWithFormat:@"%0.0f", (float)value];
在这种情况下,NSNumber 可能对您有好处。
NSString *inStr = [NSString stringWithFormat:@"%d",
[NSNumber numberWithInteger:[month intValue]]];