gpt4 book ai didi

java - 使用 Realm.io 存储货币值

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:37:27 24 4
gpt4 key购买 nike

我开始在我正在编写的 Android 应用程序中使用 Realm.io。在我的一个数据对象中,我需要存储一个货币值。以前我在内部将该值存储为 BigDecimal 值,然后在移入和移出数据库时也将其转换为 double 值。

我一直被告知,由于处理货币的方式,将货币值存储在 double 值中是个坏主意。不幸的是,Realm.io 不支持存储和检索 BigDecimal 对象。

最好的解决方案是编写我自己的扩展 RealmObject 并将其作为数据对象的成员变量的货币类吗?

最佳答案

来自 Realm 的 Emanuele。

你是对的,使用 float 或 double 作为货币是一个的想法。

我们现在不支持 BigDecimal,在我们这样做之前,我们必须看看它与所有其他语言绑定(bind)的关系,因为我们希望 Realm 文件在所有支持的平台上兼容。

Christian 的想法很好,但我看到与 String 之间的转换有点慢。如果您不需要 BigDecimal 的任意精度属性,您可以使用 long 并乘以/除以所需精度要求的因子。这也会在 Realm 文件的大小方面节省大量空间,因为整数值是位压缩的。

关于java - 使用 Realm.io 存储货币值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26227402/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com