之前对try{
}catch{
}没有什么了解知识知道有这么个抛出异常的方法,今天在写一个简单的判断月份的代码时,突然想到了如果我输入的是字符串怎么办,于是就想到了用try抛出异常,
在写的时候出现个问题,就是我定义的Scanner对象必须是在try里面定义它的类型,因为如果在外边的话他就是一个成员变量了,而且catch语句里的异常时针对try里面的来说的
所以应该在try里面定义我所要输入的类型,具体代码如下
import java.util.*;
public class Justic {
public static void main(String args[])
{
System.out.println("请输入你想了解的月份");
Scanner input = new Scanner(System.in);
Calendar c = Calendar.getInstance();
int a = c.get(Calendar.YEAR);
try{
int month = input.nextInt();
switch(month){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
System.out.println(month+"月为31天");
break;
case 4:
case 6:
case 9:
case 11:
System.out.println(month+"月为30天");
break;
case 2:
if(a%4==0 && a%100!=0){
System.out.println(month+"月为29天");
}else{
System.out.println(month+"月为28天");
}
break;
default:
System.out.println("你写的个屎啊");
}
}catch(Exception e){
System.out.println("你输入的个P啊");
}
}
}
毕竟刚刚接触,理解不对的地方以后更改,以后还会对try{}catch{}做进一步理解