23

ここで基本的なものが欠けています。忘れているに違いない。しかし、基本的には、次のコードを使用して、NSNumber を取得し、それを float に変換し、2 倍して結果を NSNumber に返します。最後のステップでエラーが発生し、困惑しています。私はそこで何をすべきか。

NSNumber *testNSNumber = [[[NSNumber alloc] initWithFloat:200.0f] autorelease];
float myfloatvalue = [testNSNumber  floatValue] * -2;
NSLog(@" Test float value %1.2f \n\n",myfloatvalue);
[testNSNumber floatValue:myfloatvalue];  // error here is floatValue is not found
4

3 に答える 3

50

のメソッドfloatValueNSNumberパラメーターを取りません。新しい浮動小数点数を設定したい場合は、 を再割り当てする必要があります。これは、可変の対応するものがないtestNSNumberためです。NSNumber

testNSNumber = @(myfloatvalue); // The new syntax

また

testNSNumber = [NSNumber numberWithFloat: myfloatvalue]; // The old syntax
于 2012-07-07T01:44:22.147 に答える
16

スウィフト 3.0:

let testNSNumber: NSNumber = NSNumber(value: myfloatvalue)
于 2016-09-18T14:25:18.470 に答える
0

スウィフト 2.0 バージョン:

let testNSNumber: NSNumber = NSNumber(float: myfloatvalue)
于 2016-01-23T21:58:34.517 に答える