Java中的BigDecimal错误

时间:2013-11-23 23:04:38

标签: java bigdecimal

所有与价格/

有关的错误都存在

import java.math.BigDecimal;

公共类产品{

    // Fields
    String name;
    String description;
    BigDecimal price = new BigDecimal(3.0);
    int quantity;
    String barcode;
    String image;
    static int count;


    // Constructors
    public Product()
    {
        name = "";
        description = "";
        price = 0;       
        quantity = 0;
        barcode = "";
        image = "";
    }

    public Product(String n, String d, double p, int q, String b, String i)
    {
        name = n;
        description = d;
        price = p;
        quantity = q;
        barcode = b;
        image = i;
    }



    // Get/Set methods

    // description getter and setter
    public String getDescription()
    {
        return description;
    }

    public void setDescription(String d)
    {
        this.description = d;
    }


    // name getter and setter
    public String getName()
    {
        return name;
    }

    public void setName(String d)
    {
        this.name = d;
    }


    // price getter and setter
    public double getPrice()
    {
        return price;
    }

    public void setPrice(double d)
    {
        this.price = d;
    }


    // quantity getter and setter
    public int getQuantity()
    {
        return quantity;
    }

    public void setQuantity(int d)
    {
        this.quantity = d;
    }


    // barcode getter and setter
    public String getBarcode()
    {
        return barcode;
    }

    public void setBarcode(String d)
    {
        this.barcode = d;
    }


    // image getter and setter
    public String getImage()
    {
        return image;
    }

    public void setImage(String d)
    {
        this.image = d;
    }

}

我的问题是为什么我的所有价格部件都出现错误。我需要它是一个大小数,但我如何修复错误?

1 个答案:

答案 0 :(得分:0)

那么你的构造函数给出p的值,这是你的bigDecimal,是一个double。你需要为它提供一个BigDecimal :)所以在arguemnts中,为“p”提供而不是“double”。

Java使用这个称为“静态检查”的东西,这意味着即使你正在输入,它也可以告诉你,如果你有一个声明为BigDecimal的变量,你试图将它设置为等于变量另一种类型,然后有一个错误。如果你将鼠标悬停在变量下面的小红色波浪线上,它会为你提供非常有用的信息!