Java语句
-------关键语句介绍
一、while语句
一般形式:
while(条件表达式) {
语句体………
}
执行过程:
条件表达式为真,执行语句体。否则,退出!
二、do while语句
一般形式:
do {
语句体…….
} while(条件表达式);
执行过程:
先执行一次语句体,判断条件表达式是否为真,为真再执行do语句中的语句体。为假,退出。
需要注意:与while语句区别
1.while(条件表达式)后面有分号;
2. 不管条件表达式是否为真,语句体均会执行一次。
三、for语句
一般形式:
for(子句1;子句2;子句3) {
语句体……
}
执行过程:
四、break、continue语句
break退出所在循环:
int stopHere = 5;
for(int i=1; i<8; i++) {
if(i == stopHere) {
break;
}
System.out.println("i = " + i);
}
//打印结果:5,6,7,8均没有打印出来。
i = 1
i = 2
i = 3
i = 4
需要注意的一个问题:
int stopHere = 5;
for(int i=1; i<8; i++) {
if(i == stopHere) {
//语句体
}
break;
System.out.println("i = " + i);
}
这个时候编译器会报错:无效的System.out输出语句。
冷静分析一下:呵呵!
break语句会结束循环,所以不会再去执行System.out输出语句。编译会认为你在多此一举,sorry报个错!
continue退出本次循环,不会退出整个循环:
int skipHere = 5;
for(int i=1; i<8; i++) {
if(i == skipHere) {
continue;
}
System.out.println("i = " + i);
}
//打印结果:除了5没有打印出来。
i = 1
i = 2
i = 3
i = 4
i = 6
i = 7
五、 switch语句
一般形式:
switch(常量) {
case 表达式1:语句体1;
break;
case 表达式2:语句体2;
break;
......
default: 语句体n;
break;
}
执行过程:
case根据自己的表达式看是否匹配常量,如果匹配就执行语句体,否则执行default语句。
case执行类似于并行操作,不是顺序操作。所以各个表达式的值不可以相同。哪个case匹配常量就会执行自己的语句体,不会再去寻找其他case语句。
注意:
<1> case穿透:省去break关键字
int i = 10;
switch (i) {
case 10:
System.out.println("A");
//break;
case 5:
System.out.println("B");
//break;
case 7:
System.out.println("C");
//break;
default:
System.out.println("error");
break;
}//打印结果:A B C error
<2>在Java编程中switch括号中的常量的数据类型只可以为int类型或者是byte、char、short(因为byte、char、short可以自动提升为int),常量类型不可以是long、float和double等数
据类型。
<3>多个case可以合并,相当于"或",例如下面i等于10、5、7都可以执行打印语句。
int i = 5;
switch (i) {
case 10:
case 5:
case 7:
System.out.println("C");
break;
default:
System.out.println("error");
break;
}//打印结果:C
<4> default语句可以省,但是不推荐,他后面的break可省
<5> case或者default子句中可以写多条语句
case 7:
System.out.println("C");
if(i == 5) {
System.out.println("i= " +i);
}
break;
<6> case或者default子句中还可以嵌套switch或者其他语句
六、 return语句
终止方法的运行并指定要返回的数据。
两种形式:
<1> return表达式;
<2> return;没有任何数据直接返回,结束函数(方法)的执行。
七、 if语句
一般形式:
1.if(条件表达式) {语句体}
2.if(条件表达式) {语句体} else{语句体}
3.if(条件表达式1)
{语句体} else if(条件表达式2)
{语句体}else
{语句体}
特别注意:形式3,else与其最近的上个if配对。例子:
public class TestIF {
public static void main(String[] args) {
int i = 30;
if(i < 20) {
System.out.println("<20");
} else if (i < 50) {
System.out.println("<50");
} else if (i < 80) {
System.out.println("<80");
} else
System.out.println(">=80");
System.out.println("我是单独的一句话!");
}
}
//<50
//我是单独的一句话!