取用户输入+检查值

时间:2015-12-02 04:15:28

标签: java int double java.util.scanner

假设我通过

获得用户输入
input.nextDouble()

如果输入为455并且我将其存储为double,那么java会将此值转换为455.00吗?或者它会抛出异常吗?

如果是这样,它会抛出nextDouble吗?或通过double数据类型存储?

1 个答案:

答案 0 :(得分:0)

nextDouble()会愉快地接受int值并将其存储为double。但如果你与其他nextXXX()方法一起调用它,请小心:

 int i=0;
 double d = 0;
    while(scanner.hasNext()){

       if(scanner.hasNextDouble()){
         d= scanner.nextDouble();
     }else{
         i= scanner.nextInt();
     }    
  }

else此处不会执行,因为hasNextDouble()将为int值返回true,而nextDouble()会将它们保存在d中。