扫描仪类 - hasNextDouble()

时间:2017-04-16 19:28:50

标签: java java.util.scanner

有人可以告诉我为什么当我输入inputDouble时(当然是双倍),条件不允许我通过。我也试过浮点型,结果是一样的。

编辑:当我输入整数时有条件传递。

public static void main(String[] args) {

    Scanner inputDouble = new Scanner(System.in);

    System.out.println("Double");

    if(inputDouble.hasNextDouble()){
        System.out.println("Passed");
    }

    inputDouble.close();

}

感谢您的帮助。

已解决:代码很好我输入的东西输入了COMMA

1 个答案:

答案 0 :(得分:0)

  

当我输入整数时有条件传递。

这称为扩展类型,基本上,int类型可以安全地转换为double类型而不会丢失任何数据。编译器隐式地将int转换为double类型。

至于:

  

有人可以告诉我为什么当我输入inputDouble(作为双倍的   当然),条件不允许我通过。

据我所知,您的代码没有问题,因为我已经在我的IDE上测试了它,所有内容似乎都按预期工作。但是,这可能与地点有关,因此请确保您使用Scanner的正确语言环境。

尝试使用,作为双/小数值的分隔符,而不是.