本周问题为:输入任意年份,判断是否为闰年。
判断是否为闰年,可以通过下面代码实现:
public boolean ifLeapYear(int year)
{
if (year % 400 == 0)
return true;
else if (year % 100 == 0)
return false;
else if (year % 4 == 0)
return true;
else
return false;
}
然而,输入的年份是保存为string类型的,因此,这时候就要把输入的字符串转换为int类型。这种情况下,就需要判断输入是否合法。我们通过Integer.parseInt(string)方法来将字符串转换为int类型,但如果输入非法时,如输入为"abc"时,程序就会报错。为此,采用try-catch来抛出异常。代码如下:
//获取输入年份
String text = TextBox1.Text;
//转换为int类型
int year = Integer.parseInt(text);
try{
if( ifLeapYear( year ) ) {
Textbox2.Text = "输入年份为闰年";
}
else {
Textbox2.Text = "输入年份非闰年";
}
}
catch (Exception e){
Textbox2.Text = "输入不合法";
}