INDEX>Foundation>NSDecimalNumber
レシーバーの内容を表現する文字列を返します
- (NSString *)descriptionWithLocale:(id)locale
func descriptionWithLocale(_ locale: AnyObject?) -> String
解説
レシーバーの内容を表現する文字列を返します。
セパレータはlocaleに依存します。
【location】数字の中に含まれる文字、記号の辞書
● NSDecimalSeparator 小数点
● NSThousandsSeparator 桁区切り
フレームワーク
Foundation
クラス
NSDecimalNumber
参照
関連記事(外部サイト)
例文
#import "MyObject.h" @implementation MyObject - (IBAction)myAction:(id)sender { NSDictionary *dic= [[NSDictionary alloc] initWithObjectsAndKeys: @",",@"NSDecimalSeparator",//小数点区切り nil]; NSNumberFormatter *numFormat = [[[NSNumberFormatter alloc] init] autorelease]; NSDecimalNumber *dNum = [[[NSDecimalNumber alloc] initWithString:@"-2,5006E3" locale:dic] autorelease]; NSLog([dNum descriptionWithLocale:dic]); [numFormat setMaximum:dNum]; [numFormat setPositiveFormat:@"#,##0.00"]; [myOutlet setFormatter:numFormat]; NSLog([NSString stringWithFormat:@"%.2f",[[numFormat maximum] doubleValue]]); } @end
//NSDecimalNumber descriptionWithLocale: @IBAction func function024(sender: AnyObject) { //カスタムの丸め挙動 小数点第二位でRoundPlain let behavior : NSDecimalNumberHandler = NSDecimalNumberHandler(roundingMode: NSRoundingMode.RoundPlain, scale: 2, raiseOnExactness: false, raiseOnOverflow: false, raiseOnUnderflow: false, raiseOnDivideByZero: false) let dNum1 : NSDecimalNumber = NSDecimalNumber(string: "3.141592") let dNum : NSDecimalNumber = dNum1.decimalNumberByRoundingAccordingToBehavior(behavior) let numFormat : NSNumberFormatter = NSNumberFormatter() numFormat.minimum = dNum //最小値が3.14000 numFormat.positiveFormat = "#,##0.000000" textField.formatter = numFormat let localeInfo: Dictionary = [ "NSDecimalSeparator": "/", //小数点 "NSThousandsSeparator":"*" //桁区切り ] NSLog("%@",dNum.descriptionWithLocale(localeInfo)) //->3/14 commentLabel.stringValue = "←最小値が3.14000" }
編集時のバージョン
OS X 10.11
Swift2.0