获取 2 个小数位的 NSDecimalNumber

iAs*_*Ash 4 objective-c nsdecimalnumber ios

我想在除以 100 后创建 NSDecimalNumber。我使用以下代码:

NSDecimalNumber *amountToSendNumber = [number decimalNumberByDividingBy:[NSDecimalNumber decimalNumberWithString:@"100"]];
Run Code Online (Sandbox Code Playgroud)

如果我提供 2536 作为 25.36 的输入,它会给我正确的值。但是,如果我提供输入为 2500,则输出为 25。我希望输出为 25.00,而没有任何舍入机制。

任何帮助?

Bhu*_*hta 5

您需要NSNumberFormatter在显示时使用NSDecimalNumber

  NSNumberFormatter *formatter = [NSNumberFormatter new];
  [formatter setMinimumFractionDigits:2];
   NSLocale *usLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
  [formatter setLocale:usLocale];
  NSLog(@"%@", [formatter stringFromNumber:amountToSendNumber]);
Run Code Online (Sandbox Code Playgroud)