问题标签 [nsdecimalnumber]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
objective-c - 如何在十进制和整数之间拆分 NSDecimalnumber 并返回
我不知道如何从 NSDecimalnumber 中获取整数和十进制值。
例如,如果我有 10,5,如何得到 10 和 5?
如果我有 10 和 5,如何返回 10,5?
嗯,好的,看起来更好!
但是,我担心丢失小数。
这是一个国际化的应用程序。例如,如果用户设置价格“124,2356”,我想加载并保存确切的数字。
嗯,好吧,就是这样,但不尊重小数位数。如果存在一种从我设置的当前本地知道的方法。
这是因为它代表货币价值......
objective-c - NSDecimalNumber 的 decimalNumberByDividingBy:withBehavior 问题:
我似乎总是遇到 NSDecimalNumber 的麻烦!今天,我收到此错误:
"Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSCFNumber decimalNumberByDividingBy:withBehavior:]: unrecognized selector sent to instance 0xd1fb10'"
这是错误的来源:
文档将方法定义为:
我一定不能正确解释 " (id<NSDecimalNumberBehaviors>)behavior
" 论点。只要符合 NSDecimalNumbersBehaviors 协议,这不就是任何对象吗?
我在做什么错?代码示例将非常有帮助。
星期五快乐!
objective-c - NSNumber 的格式化绝对值
嗯,它实际上是一个 NSDecimalNumbers 数组的总和,我想得到它的绝对值......我一直觉得我正在与框架进行所有所需的转换和类型转换......从 double 到 NSNumber到 NSDecimalNumber 并返回......所有同时试图保持 NSDecimalNumber 提供的精度。以下方法有效,但有没有更简单的方法可以避免所有这些转换和类型转换?
也许我可以更改 NSNumberFormatter (currencyFormatter) 以忽略 - 符号?
iphone - 你如何将浮点数从另一个类传递给 ProgressView?
我正在尝试从另一个类中进行的计算中传递 ProgressView 一个浮点数。我尝试通过将其转换为 NSDecimalNumber 来传递它,但是当它到达目的地时我无法再次将其恢复为浮点数。一定有比这更好的方法。
iphone - 通过核心数据计算十进制值的总和不能正常工作?
我是第一次在这一轮发帖,所以如果我没有正确遵守所有规则,请多多包涵。
我正在为 iPhone (OS 3.1) 编写一个应用程序,并试图编写一些代码来添加小数。我有一个名为 SimpleItem 的核心数据实体,它有一个数量属性。这是我写的测试用例:
如果我通过 otest 执行此代码并对其进行调试,则在执行 fetch 请求时会出现异常:“-[NSDecimalNumber count]: unrecognized selector sent to instance.”
不过,仅在没有聚合函数的情况下评估 keyPathExpression 就可以正常工作。
参考文档显示了完全相同的示例,所以我想知道我做错了什么。或者这可能只是一个错误?
一切顺利,哈拉尔
ios - 小数点后的 NSDecimalNumber 零(iPhone SDK)
我有以下代码
我希望能够让 firstStepReturn 在小数点后有 2 位数字,即使它们是 .00 或 .*0。例如,如果将 323.390 输入到文本字段“textFieldThree”中,它将被处理并作为 3233.90 返回到文本字段。目前,它显示为 3233.9。
任何帮助将不胜感激。
iphone - NSNumberFormatter 和舍入百分比值
这是我的代码片段,我不知道如何舍入双数。
这里 tmpProduct.msrp 和 mpProduct.discountPrice 是 (NSDecimalNUMber *)
从上面的操作我得到 p = 44.995757
我想将其转换为 (45%) ,我该怎么做?
这是我使用的,但这无济于事。
iphone - iPhone货币输入使用NSDecimal而不是float
iPhone/Objective-C/Cocoa 新手在这里。基于 stackoverflow 上的一些帖子,我拼凑了一个 IBAction,我在我正在构建的基本 iPhone 计算器应用程序中使用它。IBAction 与数字键盘配合使用,无需输入小数点即可输入十进制数字。
我正在非常努力地遵守“在处理货币时使用 NSDecimal”的格言,尽管我发现像许多其他发布问题的人一样很难做到这一点。我正在稳步前进,但是在我了解 NSDecimal 和 Format Specifications 之后,我确信这会看起来微不足道。
这是我正在使用的 IBAction(它由 Editing Changed UITextField 事件触发):
currencyField1 代码段使用浮点数,currencyField2 段使用 NSDecimal。
currencyField1 段按需要工作:显示所有小数点后两位数字(即使使用删除键删除所有输入的数字);但是,它会遇到并完美地说明了在处理大货币值时使用浮点数的问题:当输入的数字超过 8 位时,会出现舍入错误。
currencyField2 段通过使用 NSDecimal 而不是 float 来避免舍入错误问题;但是它并不总是显示小数点后有两位数字的数字——当使用删除键删除所有输入的数字时会显示这种情况。我相信问题是由于这行代码:
这是产生所需浮点格式的以下行的推论:
所以,我认为我需要等效于 @"%0.2f" 来格式化“0”值 NSDecimalNumber 的显示。我已经为此呆了这么多小时,以至于我很尴尬,但我就是想不通。
任何帮助或指针表示赞赏。
编辑:我合并了 NSNumberFormatter 对象(类似于布拉德在他的评论中描述的),这似乎已经解决了这个问题。但是,我想要一些关于重构代码的反馈,因为我已经让它工作了。这是修改后的代码:
它解决了我最初的问题,但我将不胜感激有关如何改进它的任何建议。谢谢。
iphone - 在 iPhone 开发中创建自动释放对象
我需要创建一些NSDecimalNumber
对象对象作为我的应用程序的一部分(因为我需要它们提供的计算精度),但我注意到在计算中它们返回 NSDecimalNumber 对象,这些对象可能是自动释放的。
我的问题真的是这在我可能进行大量计算的 iPhone 应用程序中是否存在潜在问题。
这个问题不仅仅与 NSDecimalNumber 有关,还与在开发 iPhone 应用程序的过程中有时不可避免地创建自动释放对象有关。
我们将不胜感激地收到有关这一点的任何详细答案。
objective-c - Cocoa:尾数和指数为 0 的 NSDecimalNumber
在数学上,任何指数为 0 的数字都应该等于 1(我的补救数学研究向我保证)。
但是这段代码产生了 5:
这是计算机编程中的标准吗——可以依赖于在未来的 Cocoa 版本中没有被“纠正”吗?