Scanner reader=new Scanner(System.in);
double sum=0;
int m=0;
while(reader.hasNextDouble())
{
double x=reader.nextDouble();
m=m+1;
sum=sum+x;
}
速回,谢谢
给你看API的解释:
hasNextDouble
public boolean hasNextDouble()如果通过使用 nextDouble() 方法,此扫描器输入信息中的下一个标记可以解释为默认基数中的一个 double 值,则返回 true。扫描器不执行任何输入。
也就是说只要输入能转成double的数就进入while循环.追问
hasNextDouble
public boolean hasNextDouble()如果通过使用 nextDouble() 方法,此扫描器输入信息中的下一个标记可以解释为默认基数中的一个 double 值,则返回 true。扫描器不执行任何输入。
也就是说只要输入能转成double的数就进入while循环.追问
不是double型就跳出while循环吗?比如输入int型 3 跳出循环还是强制转换double
追答强制转换double
温馨提示:答案为网友推荐,仅供参考
第1个回答 2011-11-11
hasNextDouble()判断是否有输入流输入,如果有,且是double型,则进入while循环,所没有输入流则等待,若输入了却不是double型,则抛出异常结束此程序运行,所以如果想要此程序成功运行,应该还需要加try。。。catch语句来捕捉异常追问
不是double型就跳出while循环吗?比如输入int型 3 跳出循环还是强制转换double
第2个回答 2011-11-11
如果通过使用 nextDouble() 方法,此扫描器输入信息中的下一个标记可以解释为默认基数中的一个 double 值,则返回 true。
就是检测到下一个数为double型的话返回true。明白吗?
就是检测到下一个数为double型的话返回true。明白吗?