Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何输入双变量?_Java - Fatal编程技术网

Java 如何输入双变量?

Java 如何输入双变量?,java,Java,当我运行此代码并为第一个变量输入双精度值时,即 它在read.nextDouble()行上显示一个错误,作为线程“main”java.util.InputMismatchException中的异常 /** * Created by Ranjan Yadav on 1.10.2016. */ public class GasMileage { public static void main(String[] args){ java.util.Scanner read =

当我运行此代码并为第一个变量输入双精度值时,即 它在read.nextDouble()行上显示一个错误,作为线程“main”java.util.InputMismatchException中的异常

/**
 * Created by Ranjan Yadav on 1.10.2016.
 */
public class GasMileage {
    public static void main(String[] args){
        java.util.Scanner read = new java.util.Scanner(System.in);
        int counter = 0;
        System.out.println("Miles Driven(press 1 to quit): ");
        double miles = read.nextDouble();
        double totalGalon = 0;
        double totalMiles = 0;
        double milesPerGalon = 0;
        double totalMilesPerGalon = 0;
        totalMiles += miles;
        while(miles != 1){
            System.out.println("Gallon used: ");
            double galon = read.nextDouble();
            counter++;
            milesPerGalon = miles / galon;
            totalMilesPerGalon += milesPerGalon;
            System.out.println("Miles per gallon: " + milesPerGalon);
            System.out.println("Miles Driven(press 1 to quit); ");
            miles = read.nextDouble();
            totalGalon += galon;
            totalMiles += miles;
        }
        if(counter == 0 ){
            System.out.println("No values were entered.\nThanks for Using!\n\n");
        }else{
            double avg = totalMilesPerGalon / counter;
            System.out.printf("Total miles driven: %.2f" , totalMiles);
            System.out.printf("Total gallons used: %.2f" , totalGalon);
            System.out.printf("Miles per gallon for all trips: %.2f" , totalMilesPerGalon);
        }
    }
}
从:

抛出:

  • InputMismatchException
    -如果下一个标记与浮点正则表达式不匹配或超出范围

基本上,您输入的不是数字。

您输入的是什么?代码对我来说很好,也许是您的输入造成了问题?编辑:也许你输入的是“3,7”而不是“3.7”?我用intellij写了100.23英里。好吧。。。另一个
read.nextDouble
s呢?那么您键入“100.23”,按enter键,它会立即引发异常?