当前位置: 技术问答>java相关
简单程序,谢谢
来源: 互联网 发布时间:2015-07-04
本文导语: public class SwitchDemo { public SwitchDemo() { } public static void main(String[] args) { char c; System.out.println("请输入数字:"); c =(char)System.in.read(); switch (c) { case...
public class SwitchDemo {
public SwitchDemo() {
}
public static void main(String[] args) {
char c;
System.out.println("请输入数字:");
c =(char)System.in.read();
switch (c)
{
case 0:
System.out.println("测试输入0");
break;
case 1:
System.out.println("测试输入1");
break;
case 2:
System.out.println("测试输入2");
break;
default:
System.out.println("输入超出范围");
}
}
}
错误信息:
SwitchDemo.java [9:1] unreported exception java.io.IOException; must be caught or declared to be thrown
c =(char)System.in.read();
^
1 error
为什么?
public SwitchDemo() {
}
public static void main(String[] args) {
char c;
System.out.println("请输入数字:");
c =(char)System.in.read();
switch (c)
{
case 0:
System.out.println("测试输入0");
break;
case 1:
System.out.println("测试输入1");
break;
case 2:
System.out.println("测试输入2");
break;
default:
System.out.println("输入超出范围");
}
}
}
错误信息:
SwitchDemo.java [9:1] unreported exception java.io.IOException; must be caught or declared to be thrown
c =(char)System.in.read();
^
1 error
为什么?
|
c =(char)System.in.read();
因为在你的代码中有上面一句,而这句是有可能产生例外的,所以在你的代码中必须捕获它的; 而捕获它有两种方法,我上面写的是其中一种, 还有一种就是写
try{ };catch{ }语句,也就是 上面drnstar() 所写的!
第二个问题你写成这样看看:即是在数字上面加一个单引号!
case '0':
System.out.println("测试输入0");
break;
case '1':
因为在你的代码中有上面一句,而这句是有可能产生例外的,所以在你的代码中必须捕获它的; 而捕获它有两种方法,我上面写的是其中一种, 还有一种就是写
try{ };catch{ }语句,也就是 上面drnstar() 所写的!
第二个问题你写成这样看看:即是在数字上面加一个单引号!
case '0':
System.out.println("测试输入0");
break;
case '1':
|
public static void main(String[] args)
改成public static void main(String[] args) throws Exception 就行了!
改成public static void main(String[] args) throws Exception 就行了!
|
public static void main(String[] args)
或改成
public static void main(String[] args) throws java.io.IOException
也可以的!
或改成
public static void main(String[] args) throws java.io.IOException
也可以的!
|
和读写有关的操作为了防止有异常被掷出都应被捕获,你的程序缺少这些代码
可以用
try{
你的代码
}
catch(Exception e){
e.printStackTrace();
}
来解决
可以用
try{
你的代码
}
catch(Exception e){
e.printStackTrace();
}
来解决
|
系统提示很明显的未捕获异常错误啊。