将int转换为NSString

时间:2012-08-28 05:02:06

标签: iphone nsstring int

我想转换NSString中的随机int数,然后将NSString分配给另一个NSString,但它会崩溃应用

我正在做以下

int mynumber =(arc4random() % 1000 );

unique = [NSString stringWithFormat:@"%d",mynumber];

   NSLog(unique)

   NSString*test=unique;

当我写下最后一行时它会崩溃;

当我记录unique字符串时,它还会打印值。

4 个答案:

答案 0 :(得分:94)

如果要将int更改为字符串

NSString *strFromInt = [NSString stringWithFormat:@"%d",yourintvalue];

答案 1 :(得分:51)

这也有效:

NSString *str = [@(number) stringValue];

或者,如果您更喜欢点符号:

NSString *str = @(number).stringValue;

这将使用表达式装箱语法NSNumber将原始值设置为@(...),然后使用其“stringValue方法将其转换为NSString。这也适用于其他原始值(NSIntegerfloatdoublelong,...)。

答案 2 :(得分:1)

NSString *anotherStr;
int myNumber = (arc4random() % 1000 );
NSString *stringNum = [NSString stringWithFormat:@"%i", myNumber];
anotherStr = stringNum; //assign NSString to NSString
// Here you can convert NSString to Int if you want.
NSLog(@"My number as NSString = %@", stringNum);
int getNumFromString = [stringNum intValue];

NSLog(@"My number from NSString = %i", getNumFromString);

答案 3 :(得分:0)

您错误地使用了NSLog语句。它应该像下面一样使用。

NSLog(@"%@",unique);