JAVA语言基础之语句及控制流3
l 多分支语句switch 开关语句:控制传递给以表达式的值为标号的语句。格式:
switch (int_expression)
{
case n1:
Statements;break;
case nk;
Statements;break;
default:
Statements; break;
}
这里int_expression必须返回一个int(或byte,char,short),n1到nk为int或可以返回int的一个表达式。
如果没有找到匹配的值,则执行default: Statements,不过default可有可无
每个case之后,可以包含一个或多个语句而不用用{}包起来。
一般在每个case后的语句末尾都要加一个break语句,否则若该case符合,则它下面一直到switch结束或遇到break,所有的语句都会执行。
程序例:
JAVA语言基础之语句及控制流3
class DayCounter{
public static void main(String[] arguments)
{
int yearIn = 2001; //可以改变 年 月的数据
int monthIn = 3;
if (arguments.length > 0) //也可以从命令行上来输入
monthIn = Integer.parseInt(arguments);
if (arguments.length > 1)
yearIn = Integer.parseInt(arguments);
System.out.println(monthIn + "/" + yearIn + " has " + countDays(monthIn, yearIn) + " days.");
}
public static int countDays(int month, int year)
{
int count = -1;
switch (month)
{
case 1: //识别大月
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
count = 31;
break;
case 4: //识别小月
case 6:
case 9:
case 11:
count = 30;
break;
case 2: //识别平月
if (year % 4 == 0)
count = 29;
else
count = 28;
if ((year % 100 == 0) & (year % 400 != 0))
count = 28;
}
return count;
}
}
页:
[1]