我真的需要帮助,我是编程新手。每次我运行我的代码我都会遇到这个问题转换=' - '。
以下是代码:
她是产品的代码
public abstract class Product implements Comparable<Product>, Serializable{
private Discount dR;
private String description;
private double price;
private int numInStock;
private Date releaseDate;
private int rating;
public Product() {
}
以下是折扣的代码,即dR
public class Discount {
private Product pro;
private Customer cust;
private double price;
private int quantity;
private double getDiscount;
private char discountRate;
public Discount() {
super();
}
public String toStringD() {
NumberFormat nf = NumberFormat.getCurrencyInstance();
String string;
string = "ALL PRODUCT SOLD";
string = string + String.format("%-35s %-20d", description, dR.getQuantity()) +
"\t\t" + nf.format(price) + "\t" + String.format("%-15f %-15d", dR.getPrice(), releaseDate);
return string;
}
这是问题
java.util.UnknownFormatConversionException: Conversion = '-'
答案 0 :(得分:0)
java.util.UnknownFormatConversionException:Conversion =&#39; - &#39;
当您尝试使用与在字符串中声明的类型不同的类型格式化字符串时,抛出,即:%d,%f等。
为了证实这一点,我在我的ide中运行你的方法来改变字符串格式函数中的参数,用于正确类型的硬编码参数。
我可以毫无问题地运行你的方法。
因此,要么:
1)&#34;描述&#34;不是一个字符串。 2)dR.getQuantity()返回一个float或其他非整数类型。 3)dr.getPrice()没有返回浮点数 4)releaseDate不返回整数。
由于您没有提供其余的代码,我无法准确地告诉您哪些代码会给您带来麻烦,但我认为通过此信息您可以跟踪给您带来麻烦的变量