gpt4 book ai didi

java - 计算有问题……怎么了?

转载 作者:行者123 更新时间:2023-11-30 06:19:19 26 4
gpt4 key购买 nike

无法计算出来。其余的编码都很好,但这一类。错误集中在一行。

  • 零售价 = double.parseDouble(input1) * (double.parseDouble(input2)/100);

错误告诉我“类预期”“;预期”和“不是声明”。我哪里错了,因为这对我来说似乎是正确的?

private class CalcButtonListener implements ActionListener
{

// The actionPerformed method executes when the user clicks the calculate button
public void actionPerformed(ActionEvent e)
{
double retail_price;
String input1;
String input2;

//Get the number from the users input in priceFeild1
input1 = priceField1.getText();

//Get the number from the users input in priceFeild2
input2 = priceField2.getText();

// Calculate out the operation below to find the retail_price
retail_price = double.parseDouble(input1) * (double.parseDouble(input2) / 100);

JOptionPane.showMessageDialog(null, "The retail price of the item is: $" + retail_price );
}

最佳答案

包含parseDouble 的类的名称是Double ,而不是 double。它们不是同义词。 double 是基本类型的名称,基本类型没有方法。

所以你需要:

retail_price = Double.parseDouble(input1) * (Double.parseDouble(input2) / 100);

但是,无论如何,您也应该强烈考虑使用 BigDecimal 而不是 Double,因为它更适合货币值。

此外,我建议:

  • 遵循 Java 命名约定,使用 camelCase 代替下划线分隔符
  • 为您的变量赋予更有意义的名称 - input1input2 意味着什么?也许是价格和折扣?
  • 只在需要的地方声明变量,而不是在方法的开始
  • 考虑如果用户输入的值不是有效数字您希望发生什么
  • 考虑您是否关心国际化(例如,用户输入“10,50”而不是“10.50”)。如果是,请查看 NumberFormatDecimalFormat

关于java - 计算有问题……怎么了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23288393/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com