java的Scanner问题

LNK_Ero2001 2014-09-25 02:54:58
这是Java写的一个简单程序,为什么老是报错
import java.util.Scanner;
public class TestMax{
public static void main(String [] args){
Scanner input = new Scanner(System.in);
System.out.print("Enter a degree num:");
double data = input.nextDouble();
System.out.print("The num is:" + data);
}
}

错误如下
Compiling TestMax.java.......  
-----------OUTPUT-----------
Enter a degree num:Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
at java.util.Scanner.nextDouble(Unknown Source)
at TestMax.main(TestMax.java:6)
[Finished in 0.8s with exit code 1]
...全文
385 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaolong806124 2014-09-26
  • 打赏
  • 举报
回复
LNK_Ero2001 2014-09-26
  • 打赏
  • 举报
回复
sublime无法从下面输入?
youzi05 2014-09-25
  • 打赏
  • 举报
回复
引用 8 楼 u014245881 的回复:
[quote=引用 7 楼 zjq123128976 的回复:] 程序是正确的啊,。你重新建一个项目试试。用Eclipse的话要在项目里面写
用的是Sublime老是报错[/quote] 使用Sublime没法输入, 可以把 JavaC.sublime-build 改成
{
	"shell_cmd": "javac \"$file\"",
	"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
	"selector": "source.java",
	"shell": true,
	"encoding": "cp936",
	
	"variants":
	[
		{
			"name": "Run",
			"shell_cmd": "javac \"${file}\" && java \"${file_base_name}\""
		},
		{
            "name": "RunInCommand",
            "shell_cmd": "javac \"${file}\" && start cmd /c \"java ${file_base_name} & pause\""
        }
	]
}
,不同版本位置不一样,这里就介绍了. 或者直接 tools-->Build System-->New Build System, 把上面的内容输进去,保存为 java.sublime-build,注意后缀一定为sublime-build. 参见sublime编译C的配置: http://www.cnblogs.com/akira90/archive/2013/01/02/2842571.html
Sauron1 2014-09-25
  • 打赏
  • 举报
回复
程序是没有问题的。已经测试。不过楼主怎么这样写输出语句,起码写个判断循环啊,用户输入错误再给次机会撒
scott_129 2014-09-25
  • 打赏
  • 举报
回复
我也觉得程序没有问题,如果从控制台输入的是in或者是double类型的数据的话,应该不会报错的。
LNK_Ero2001 2014-09-25
  • 打赏
  • 举报
回复
用命令行编译就没出什么错误
LNK_Ero2001 2014-09-25
  • 打赏
  • 举报
回复
引用 7 楼 zjq123128976 的回复:
程序是正确的啊,。你重新建一个项目试试。用Eclipse的话要在项目里面写
用的是Sublime老是报错
「已注销」 2014-09-25
  • 打赏
  • 举报
回复
程序是正确的啊,。你重新建一个项目试试。用Eclipse的话要在项目里面写
LNK_Ero2001 2014-09-25
  • 打赏
  • 举报
回复
引用 5 楼 u012171905 的回复:
正确的啊...你是不是输入了字符串
为什么我的编译不通过 还没输入东西就那么报错
Coder_D 2014-09-25
  • 打赏
  • 举报
回复

正确的啊...你是不是输入了字符串
crtl+啥都不会 2014-09-25
  • 打赏
  • 举报
回复
你输入的不是double类型的数字吧
LNK_Ero2001 2014-09-25
  • 打赏
  • 举报
回复
引用 2 楼 u012171905 的回复:
你有从控制台输东西吗?
还没有输入就报错了
Coder_D 2014-09-25
  • 打赏
  • 举报
回复
你有从控制台输东西吗?
LNK_Ero2001 2014-09-25
  • 打赏
  • 举报
回复
java新手,求指教

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧