如何在java中以double或at列表的形式编写一个无限制的数字作为十进制值

如何在java中以double或at列表的形式编写一个无限制的数字作为十进制值,java,database,math,double,Java,Database,Math,Double,我一直在寻找答案,但没有找到 我有一个银行项目,其中一个目的是: 白金客户可以有无限的信用额度 在数据库中,我将PlatinumClientCommissionRate的值写为varchar unlimited 但是当我需要在java操作中使用它时, 我不知道如何写这个方法——获得白金客户利率 所以。。如何在java中以double或at列表的形式编写一个无限制的数字作为十进制值 一些朋友让我写“-1”,但我该如何进行数学计算呢 谢谢大家如果白金客户没有限制,为什么不在计算中跳过它呢?另一件事是

我一直在寻找答案,但没有找到

我有一个银行项目,其中一个目的是: 白金客户可以有无限的信用额度

在数据库中,我将PlatinumClientCommissionRate的值写为varchar unlimited 但是当我需要在java操作中使用它时, 我不知道如何写这个方法——获得白金客户利率

所以。。如何在java中以double或at列表的形式编写一个无限制的数字作为十进制值 一些朋友让我写“-1”,但我该如何进行数学计算呢


谢谢大家

如果白金客户没有限制,为什么不在计算中跳过它呢?另一件事是,如果你用大小数处理金钱问题

如果您不知道整数或Double是否足够大,请使用BigDecimal,这在理论上不是很好,但实际上它可以表示的数字范围是无限的。

我不明白您为什么需要这样的方法

getPlatinumClientRate()
如果你已经知道它是无限的

更好的方法IMHO:

Decimal limit = getClientRate(clientId);
if (limit == null) {
    // must be Platinum client, he has no limit
}
else {
    // ordinary client, tell them to go away or pay extraordinary interest rates.
}

我真的不明白你想要什么。你想把无限的概念表示成一个数字吗?如果没有限制,你就不能用它来计算;但是,在Java中,将钱表示为double是一件非常非常糟糕的事情!边注:考虑使用java命名约定:GETPaPultNuMuCclitTyRelt应该命名为GETPalueNuMcliclitIt,您需要将无限率作为代码中的特殊速率来处理。无论您如何将其存储在DB中或存储在哪个变量中。你所需要的就是正确对待它。