NSString
のランダムな整数を変換し、NSStringを別のNSString
に割り当てたいが、アプリがクラッシュする
私は次のことをしています
int mynumber =(arc4random() % 1000 );
unique = [NSString stringWithFormat:@"%d",mynumber];
NSLog(unique)
NSString*test=unique;
最後の行を書き込むとクラッシュします。
unique
文字列をnslogするときに値も出力します。
Intを文字列に変更する場合
NSString *strFromInt = [NSString stringWithFormat:@"%d",yourintvalue];
これも機能します:
_NSString *str = [@(number) stringValue];
_
または、ドット表記を好む場合:
_NSString *str = @(number).stringValue;
_
これは、式ボクシング構文@(...)
を使用してプリミティブ値をNSNumber
にボックス化し、次にそのstringValue
メソッドを使用してNSString
に変換します。これは、他のプリミティブ値(NSInteger
、float
、double
、long
、...)でも機能するはずです。
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);
NSLogステートメントを誤って使用しました。以下のように使用する必要があります。
NSLog(@"%@",unique);