如何获取NSDecimal舍入到最接近的整数值?

理查德·D

我使用NSDecimal是因为我必须为应用程序存储非常大的值。我希望能够使用NSDecimalDivide函数将两个NSDecimals相除并将结果四舍五入到最接近的整数。

    NSDecimal testOne = [[NSDecimalNumber decimalNumberWithString:@"1064"] decimalValue];
    NSDecimal cost = [[NSDecimalNumber    decimalNumberWithString:@"10"]decimalValue];
    NSDecimal value;
    NSDecimalDivide(&value, &testOne, &cost, NSRoundDown);
    NSString *string = NSDecimalString(&value, _usLocale);
    NSLog(@"Here is the cost%@",string);

这个输出为106.4,我希望它输出为106。有人知道如何将NSDecimal数舍入为整数值吗?

苏尔坦

一种可能的方法是使用NSDecimalNumberHandlerwithscale设置为0

NSDecimalNumber *number1 = [NSDecimalNumber decimalNumberWithString:@"1064"];
NSDecimalNumber *number2 = [NSDecimalNumber decimalNumberWithString:@"10"];

NSDecimalNumberHandler *behavior = [[NSDecimalNumberHandler alloc] initWithRoundingMode:NSRoundDown
                                                                                  scale:0
                                                                       raiseOnExactness:NO
                                                                        raiseOnOverflow:NO
                                                                       raiseOnUnderflow:NO
                                                                    raiseOnDivideByZero:YES];

NSDecimalNumber *result = [number1 decimalNumberByDividingBy:number2 withBehavior:behavior];

NSLog(@"Here is the cost %@", result);

请注意,我根本没有使用该原语NSDecimal,您也应该这样做。

但是,如果要NSDecimal直接使用,则可以使用方便的NSDecimalRound功能。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将变量舍入到最接近的整数

来自分类Dev

如何舍入到最接近的50或100?

来自分类Dev

如何舍入到最接近的10的幂?

来自分类Dev

NZSQL /代码-如何将NZSQL设置为不舍入到最接近的整数

来自分类Dev

C#:如何将整数舍入到最接近的1000

来自分类Dev

如何在PHP中将整数向上舍入到最接近的15

来自分类Dev

舍入到最接近的X

来自分类Dev

如何在Excel中将时间舍入到最接近的小时?

来自分类Dev

如何舍入到最接近的32倍因子?

来自分类Dev

如何使用C#舍入到最接近的.5

来自分类Dev

如何在 Swift 中将 Int 舍入到最接近的 10?

来自分类Dev

如何将时间戳舍入到最接近的秒数?

来自分类Dev

将数据框中的舍入舍入到最接近的特定浮点值(舍入到非整数列表)

来自分类Dev

在SQLite中舍入到最接近或向上

来自分类Dev

舍入到最接近的奇数位

来自分类Dev

Python舍入到最接近的0.25

来自分类Dev

将Double舍入到最接近的10

来自分类Dev

JavaScript舍入到最接近的.5

来自分类Dev

将x舍入到最接近的y

来自分类Dev

bash舍入到最接近的4的倍数

来自分类Dev

舍入到最接近的给定层

来自分类Dev

舍入到最接近的三十秒

来自分类Dev

找出最接近2的整数值

来自分类Dev

将整数值更改为四舍五入到最接近的整数

来自分类Dev

在Swift 3中,如何将Float向上或向下舍入为最接近的偶数整数?

来自分类Dev

在Go中将float转换为int时如何舍入到最接近的int

来自分类Dev

如果前后仅5分钟,如何舍入到最接近的小时?

来自分类Dev

Python:查找与特定整数最接近的整数值

来自分类Dev

如何将表中的值转换为最接近的整数值并去除小数点?

Related 相关文章

热门标签

归档