用户输入问题的java代码双方程错误
我的第一项任务是开发一个代码,允许用户输入他们希望行驶的距离(以英里为单位)、燃油效率和汽油成本的数据。然后创建一个代码来计算旅行的总成本
我有所有输入值的所有代码,但方程本身有问题。Java无法识别“/”。我无法理解我在做什么,除非我需要为方程添加更多的代码
import java.util.Scanner;
public class DrivingCost
{
public static void main(String args[])
{
Scanner s = new Scanner(System.in);
System.out.print("Please enter your distance (miles): ");
Scanner t = new Scanner(System.in);
System.out.print("Please enter vehicle's fuel efficiency (mpg): ");
Scanner u = new Scanner(System.in);
System.out.print("Please enter the price per gallon (dollars): ");
String distanceInMiles = s.nextLine();
System.out.println("The distance (miles): " + distanceInMiles);
String fuelEfficiency = t.nextLine();
System.out.println("Fuel efficiency (mpg):" + fuelEfficiency);
String pricePerGallon = u.nextLine();
System.out.println("Price per gallon (dollars): " + pricePerGallon);
double tripCost = (distanceInMiles / fuelEfficiency) * pricePerGallon;
System.out.println("The trip cost (dollars): " + tripCost);
}
}
这就是我一直收到的错误:
DrivingCost.java:32: error: bad operand types for binary operator '/'
double tripCost = (distanceInMiles / fuelEfficiency) * pricePerGallon;
^
# 1 楼答案
您正在尝试使用字符串进行计算。必须解析字符串输入中的双精度。只需将方程行改为:
另外,适当的输入验证将是一个很好的改进。以防用户输入错误。此外,如评论中所述,没有必要使用多个
Scanners
。一个就够了