黑马程序员_java判断与循环语句

来源:互联网 发布:数据库规范化理论 编辑:程序博客网 时间:2024/06/04 18:29

——- android培训、java培训、期待与您交流! ———-

一、判断语句
1.switch语句
格式:
switch(表达式)
{
case 取值1:
执行语句;
break;
case 取值2:
执行语句;
break;
……
default:
执行语句;
break;
}
switch语句特点:
1.switch语句选择的类型只有四种:byte,short,int,char。
2.case之间与default没有顺序。先执行第一个case,没有匹配的case执行default
3.结束switch语句的两种情况:遇到break,执行到switch语句结束
4.如果匹配的case或者default没有对应的break,那么程序会继续向下执行,运行可以执行的语句,直到遇到break或者switch结尾结束。

工作原理:用小括号中的变量的值依次和case后面的值进行对比,和哪个case后面的值相同了就执行哪个case后面的语句,如果没有相同的则执行default后面的语句。
注意:如果将default语句放在了第一行,则不管语句与case中的value是否匹配,程序都会从default开始执行直到第一个break出现。
if语句和switch语句很像,那具体什么时候用switch语句呢?
如果判断的具体数据值不多,而且是byte,short,int,char这四种类型,建议使用switch语句。虽然if也可以用,但这种情况用switch效率相对更高一些。
2.if语句
什么时候使用if语句呢?
当判断数据范围,获取判断运算结果boolean类型时,需要使用if。
if语句有三种格式
1)if(表达式){语句}
2)if(表达式){语句1}else{语句2}
3)if(表达式1){语句1}else if(表达式2){语句2}else if(表达式3){语句3}else if(表达式n){语句n}else{语句m}
if:如果。 else:否则。
示例:
if(x>y)
{
System.out.println(“x大于y”);
}else if(x=y)
{
System.out.println(“x等于y”);
}else{
System.out.println(“x小于y”);
}
如果x>y,就输出x大于y。否则,如果x=y,就输出x等于y。否则,输出x小于y。
注意:这里如果语句只是一个if else,如果if里的x不大于y,就会执行else里的,不管是等于还是小于都执行else里的语句。

二、循环语句
什么时候使用循环结构呢?当要对某些语句执行很多次时,就使用循环结构。
1.while语句
while语句有两种,一个是while,一个是do while。
while语句格式:
while(条件表达式)
{
执行语句;
}
while语句:先判断条件,只有条件满足才执行循环体。
do while语句格式:
do{
执行语句;
}while(条件表达式);
do while语句:先执行循环体,在判断条件,条件满足在继续执行循环体。
do while语句特点:无论条件是否满足,循环体至少执行一次。
2.for语句
格式:
for(初始化表达式;循环条件表达式;循环后的操作表达式)
{
执行语句;
}
示例:
for(int x=0;x<10;x++)
{
System.out.println(x);
}
for语句要注意的地方:
1.变量有自己的作用域。对于for来讲:如果将用于控制循环的增量定义在for语句中。那么该变量只在for语句内有效。for语句执行完毕,该变量在内存中被释放。也可以定义在for外面,这它就不光只在for语句内有效,一般如果你只是在for语句中能用到这个变量,你就不要把它定义到外面,以便节省内存。
2.for和while可以进行互换。区别在于:如果需要定义变量控制循环次数。用for更合适。因为for循环完毕,变量在内存中释放。

其他流程控制语句:
break:作用于switch ,和循环语句,用于跳出,或者称为结束。
break语句单独存在时,下面不要定义其他语句,因为执行不到,编译会失败。当循环嵌套时,break只跳出当前所在循环。要跳出嵌套中的外部循环,只要给循环起名字即可,这个名字称之为标号。
continue:只作用于循环结构,继续循环用的。
作用:结束本次循环,继续下次循环。该语句单独存在时,下面不可以定义语句,执行不到。 注意:
1.这两个语句离开应用范围,存在是没有意义的
2.这两个语句单独存在时,它们下面都不可以有语句,因为执行不到
3.continue语句是结束本次循环继续下次循环
4.标号的出现,可以让这两个语句作用于指定的范围,标号只能用于循环上,给循环起名字的一种方式
示例:
w:for(int x=0;x<3;x++){
q:for(int y=0;y<4;y++){
System.out.println(“x=”+x);
break w;
}
}

continue:只能作用于循环结构,继续循环.特点:结束本次循环,继续下一次循环。
示例:
w:for(int x=0;x<3;x++){
for(int y=0;y<4;y++){
System.out.println(“x=”+x);
continue w;//直接执行外循环}}
总结:
switch与if之间if用到更广泛。if语句是可以嵌套的。语句嵌套形式其实就是语句里还有语句。
循环嵌套:for(){for(){}}。
无限循环的最简单表现形式:1.for(;;){} 2.while(true){}
if语句和for语句是比较重点的,要熟练掌握。
在switch中的break是可以省略的,编译也会成功,但如果省略了就会一直执行到遇到break为止,所以最好不要忘记加break。
——- android培训、java培训、期待与您交流! ———-

0 0
原创粉丝点击