在Java中应该使用什么数据类型来表示钱?
当前回答
表示可能的最小值的整型。换句话说,你的程序应该以美分为单位,而不是美元/欧元。
这应该不会阻止gui将其转换回美元/欧元。
其他回答
表示可能的最小值的整型。换句话说,你的程序应该以美分为单位,而不是美元/欧元。
这应该不会阻止gui将其转换回美元/欧元。
您应该使用BigDecimal来表示货币值。它允许您使用各种舍入模式,并在 金融应用中,舍入模式往往是一个硬性要求 这甚至可能是法律规定的。
对于简单的情况(一种货币),它是足够的int/long。 钱的单位是美分(…)或百分之一/千分之一美分(任何你需要的固定分割器精度)
我会用Joda Money
它仍然是0.6版本,但看起来很有前途
我喜欢使用微型类型,它会像以前的答案所建议的那样包装双精度,BigDecimal或int。(除非出现精度问题,否则我会使用double)。
一个微小的类型给你类型安全,所以你不会混淆双倍的钱与其他双份。
推荐文章
- 如何格式化Joda-Time DateTime仅为mm/dd/yyyy?
- 如何在POM.xml中引用环境变量?
- 如何在android中复制一个文件?
- 将整数转换为字符串,以逗号表示千
- 接口方法的最终参数-有什么意义?
- Java中的@UniqueConstraint注释
- 如何在清洁模式下运行eclipse ?如果我们这样做会发生什么?
- 获取java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory异常
- Java中的正则表达式命名组
- c#和Java的主要区别是什么?
- 什么是NullPointerException,我如何修复它?
- 在Java中使用“final”修饰符
- 无法在Flutter上找到捆绑的Java版本
- 如何在Kotlin解析JSON ?
- 如何在新的材质主题中改变背面箭头的颜色?