为了账号安全,请及时绑定邮箱和手机立即绑定

我的代码遇到问题,我不确定出了什么问题

我的代码遇到问题,我不确定出了什么问题

米琪卡哇伊 2023-08-23 14:41:25
我现在正在高中上一门计算机编程课,我们的作业之一与 JOption Pane 有关。我们必须允许运行我们程序的用户输入他们和他们叔叔的房子之间的英里数,然后我们给他们英尺数作为输出。它给了我一个错误,我不确定我哪里出错了。如果可以的话,请检查我的代码并找出错误(Java 编程)。import javax.swing.JOptionPane;public class MilesToFeet {    public static void main(String[] args)     {        double feetPerMile = 5280;        String milesToUncle = JOptionPane.showInputDialog("Please enter the number of miles to your uncles's house");        Double.parseDouble(milesToUncle);        JOptionPane.showMessageDialog(null, "The distance to your uncle's house is " + milesToUncle + " miles or " + (feetPerMile*milesToUncle) + " feet.");    }}
查看完整描述

3 回答

?
子衿沉夜

TA贡献1828条经验 获得超3个赞

您看到的错误是您试图将一个double值与一个String值相乘,这是没有意义的。


试试这个 - 它将 的输出保存Double.parseDouble(milesToUncleInput)到一个新变量中,然后使用该变量执行feetPerMile * milesToUncle。


double feetPerMile = 5280;

String milesToUncleInput = JOptionPane.showInputDialog("Please enter the number of miles to your uncles's house");

double milesToUncle = Double.parseDouble(milesToUncleInput);

JOptionPane.showMessageDialog(null, "The distance to your uncle's house is " + milesToUncleInput + " miles or " + (feetPerMile * milesToUncle) + " feet.");



查看完整回答
反对 回复 2023-08-23
?
慕森卡

TA贡献1806条经验 获得超8个赞

你的问题在于Double.parseDouble(milesToUncle);.

该方法.parseDouble() 返回Double,它不会修改Object您当前使用的值。

像这样使用它:

double miles = Double.parseDouble(milesToUncle);
double result = miles * feetPerMile;

您可以修改此代码,使其在使用时直接计算,.showMessageDialog()而不是将其设置为变量result


查看完整回答
反对 回复 2023-08-23
?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

变量milesToUncle是 String 类型的对象,因此不能将其与feetPerMile

这是我第一眼看到的错误。


查看完整回答
反对 回复 2023-08-23
  • 3 回答
  • 0 关注
  • 125 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信