关于Java程序的流程控制(二)
关于Java程序的流程控制(二)
3.switch选择语句
switch语句用于将一个表达式的值同许多其他值比较,并按比较结果选择下面该执行哪些语句。
switch(表达式)
{
case 取值1:
语句块1
break;
……
case 取值n:
语句块n
break;
default:
语句块n+1
break;
}
例子:将1~3对应的星期几的英文单词打印出来,
int x=2;
switch(x)
{
case 1:
System.out.println("Monday");
break;
case 2:
System.out.println("Tuesday");
break;
case 3:
System.out.println("Wednesday");
break;
default:
System.out.println("Sorry, I don't know");
}
程序打印的结果是:
Tuesday
switch语句判断条件可以接受int,byte,char,short型,不可以接受其他类型。
注意:else if是一旦匹配就不再执行后面的else语句,而case语句只是相当于定义了一个标签位置,switch一旦碰到第一次case匹配,程序就会跳转到这个标签位置,开始顺序执行以后所有的程序代码,不管后面case条件是否匹配,直到碰到break语句为止。
例如删除System.out.print(“Tuesday”)后面的break语句,程序打印出的结果将会是:
Tuesday
Wednesday
如果用同一段语句来处理多个case条件,程序可以如下编写:
case 1:
case 2:
case 3:
System.out.println("you are very bed");
System.out.println("you must make great efforts");
break;
case 4:
case 5:
System.out.println("you are good");
4.while循环语句
while语句是循环,也是条件判断语句。
while(条件表达式语句)
{
执行语句
}
当条件表达式的返回值为真时,则执行{}中的执行语句段,当执行完{}中的语句后,检测到条件表达式的返回值,直到返回值为假时循环终止。
int x=1;
while(x<3)
{
System.out.println("x="+x);
x++;
}
程序打印出来:
x=1
x=2
注意:while表达式的括号后一定不要加”;”,如:
int x=1;
while(x<3);
{
System.out.println("x="+x);
x++;
}
程序将会认为要执行一条空语句,而进入无限循环,永远不执行后面的代码,Java编译器又不会报错。