3

NSStringでfloatを使用したいと思います。stringWithFormatと%fを使用して、フロートをNSStringに統合しました。問題は、小数点以下1桁(%.1f)のみを表示したいのですが、小数点がない場合は「.0」を表示したくないということです。

どうやってやるの?

ありがとう

4

4 に答える 4

3

I found the answer with NSNumberFormatter and setMaximumFractionDigits, then:

[numberFormatter stringFromNumber:myNumber]

Thanks to everyone especially @falconcreek

于 2010-04-29T20:37:18.353 に答える
2

を使用する必要がありますNSNumberFormatter

NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init];
[numberFormatter setFormat:@"#,##0.#"];
NSNumber *oneThousand = [NSNumber numberWithFloat:1000.0];
NSNumber *fivePointSevenFive = [NSNumber numberWithFloat:5.75];

NSLog(@"1000.0 formatted: %@", [numberFormatter stringFromNumber:oneThousand]);
NSLog(@"5.75 formatted: %@", [numberForatter stringFromNumber:fivePointSevenFive]);

Appleのデータフォーマットプログラミングガイドには、フォーマット標準へのリンクがあります。便利な参照番号のフォーマットパターン

于 2010-04-29T14:36:26.910 に答える
1

このように%gを使用できます

NSLog([NSString stringWithFormat: @"test: %g", (float)1.2]);
NSLog([NSString stringWithFormat: @"test: %g", (float)1])
于 2010-04-29T11:27:15.923 に答える
0

NSNumberFormatterは最近少し変更されました。有効数字2桁を四捨五入する例を次に示します。

NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init];
[numberFormatter setNumberStyle:NSNumberFormatterNoStyle];
[numberFormatter setUsesSignificantDigits:YES];
[numberFormatter setMaximumSignificantDigits:2];

そして、ここに良い最近のリソースへのリンクがあります。

于 2014-04-29T11:15:26.193 に答える