int 值未正确转换为 double

问题描述

所以我正在写一个房子类,我的一个方法计算房子的总面积。然后再用一种方法打印房子的所有细节

这是我的面积法

 public double getTotalArea(){
        return ((300 * bedRooms) + familyRoomArea + livingRoomArea );
    }

这是我的打印方法

 public String toString() {
        return ("House Style =" + this.style + ",bedrooms = " + this.bedRooms +
                ",family room area = " + this.familyRoomArea + ",living room area = "
                + this.livingRoomArea + ",plot = " + this.plot + ",and square feet = " + (double)Math.round(this.getTotalArea() * 100)/100.0);
    }

这是我的测试员

 String style1 = "colonial";
        double familyRoomArea1 = 700;
        double livingRoomArea1 = 500;
        int bedRooms1 = 3;
        double plot1 = 0.7;
        House house1 = new House(style1,familyRoomArea1,livingRoomArea1,bedRooms1,plot1);
        System.out.print("House 1: ");
        System.out.print(house1.toString());

这是我运行程序时得到的当前输出

House 1: House Style =colonial,bedrooms = 3,family room area = 700.0,living room area = 500.0,plot = 0.7,and square feet = 2100.01

我不知道我在这里做错了什么,因为我应该得到 2100.00 的总面积,但我一直得到 2100.01 我尝试了很多不同的东西,我什至在没有 Math.round 函数的情况下使用它,但它仍然给了我这个答案。

我能知道可能是什么问题吗?我该如何解决这个问题,谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)