加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

如何用BigDecimal替换双重的java中的monies

发布时间:2020-12-15 08:46:24 所属栏目:Java 来源:网络整理
导读:我正在做大学任务,我用双打钱.我知道不建议使用双倍的货币值,所以我想知道如何替换我用BigDecimal加倍的现有代码. 由于这是一个大学作业,我不想直接帮助我的代码,也不想在这里发布它,所以我创建了以下代码,我希望直接回复,即更改我提供的代码这样我才能理解
我正在做大学任务,我用双打钱.我知道不建议使用双倍的货币值,所以我想知道如何替换我用BigDecimal加倍的现有代码.

由于这是一个大学作业,我不想直接帮助我的代码,也不想在这里发布它,所以我创建了以下代码,我希望直接回复,即更改我提供的代码这样我才能理解发生了什么.

我想知道BigDecimal如何用int或double乘以/除/加/减,或者甚至不是偶然.

还有其他主题涉及BigDecimal使用,但它们并不涵盖我的具体问题,但是,如果我忽略了已经回答的帖子,我很抱歉.

这是代码:

import java.util.Scanner;
import java.text.NumberFormat;

class example {
public static void main(String[] args) {
    Scanner in = new Scanner(System.in);

    NumberFormat fm = NumberFormat.getCurrencyInstance();

    System.out.println("Enter the first amount:");
    double money1 = in.nextDouble();
    System.out.println("Enter the second amount:");
    double money2 = in.nextDouble();
    System.out.println("Enter the third amount:");
    double money3 = in.nextDouble();

    double tax = 0.2;
    double totalmoney = money1 + money2 + money3;
    double moneytax = (totalmoney)*tax;


    System.out.println("Your money added together is: " + fm.format(totalmoney));
    System.out.println("Tax on your money is: " + fm.format(moneytax));
    System.out.println("Your money after tax deduction is: " + fm.format((totalmoney-moneytax)));
    }
}

解决方法

BigDecimal的替代方法可能是使用long进行所有计算,只需在末尾插入小数点.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读