Java基础篇 --- 控制执行流程

控制执行流程

if-else 、while 、do-while 、 for 、return 、break 、 continue 、switch

if-else

if-else 语句是控制程序流程的最基本的形式,其中的else 是可选的。

int v = 9;
int k = 5;
if ( v > k ){
	System.out.print("v大于k");
}else{
	System,out.print("v不大于K");
}

while

while 、do-while 、 for 都是用来控制循环的,有时将他们划分为迭代语句(interation 、 statement)。语句会重复执行,直接起控制作用布尔表达式(Booleanexpression)得到“假”的结果为止

while :最少可以不进循环, 如果条件不成立,将不会进入循环体。

int v= 4;
while(v > 1){
	System.out.print(" v > 1");
	v--;
}
System.out,print(" 退出循环");

do - while

do - while : 与while不同的是,不管条件是否成立,最少执行一次循环体。

do{
	Systom.out.print(" 我是do-while, 我最少执行一次 ");
}while( false);

int v = 2;
do(
	System.out.print(" 我是do-while! ")
	v++;
)while(v <= 3)

while和do-while 唯一的区别就是do-while的语句至少会执行一次,即便表达式第一次就被计算为false。而在while循环结构中,如果条件第一次就是false,那么其中的语句根本不会执行,在实际应用中,while比do-while更常用一些。

for 循环

for 循环可能是在最经常使用的迭代形式,这种在第一次迭代之前要进行初始化,随后,它会进行条件测试,而且在每一次迭代结束时,进行某种形式的 “进步” 。

for(int i= 0 ; i < 5 ; i++ ){
	System.out.println(" i = " + i);
}

for 逗号操作符

for (int i = 1 , j = i + 10; i > 5; i++ , j = i * 2) {
	System.out,println( " i =" + i + " j = " + j)
}

foreach 语法

foreach:不必在创建int 变量去对由访问项构成的序列进行计数。foreach将自动生产每一项

for( Char c : " An African Swallow".toCharArray()){
	System.out.print( c + " ");
}

return break continue它们只是表示这个分支无需任何测试即可发生,跳转到标识号语句的方式。

return 关键词有两个方面的用途,一个方面是指定一个方法返回什么值(假设它没有void),另外一个方面它会导致当前的方法退出,并返回那个值。

public static int test(int v , int k){
	if( v > k ){
		return  +1;
	}else if( v < k ){
		return -1;
	}else{
		return 0;
	}
}
public static void main(Strinrg[] args){
	System.out,println( test(10 , 8));
	System.out,println( test(5 , 3));
	System.out,println( test(8 , 8));
}

执行了return 后面将不再执行。

break 和 continue 在任何迭代语句的主体部分,都可用break和continue控制循环的流程。

其中break用于强行退出循环,不执行循环中剩余的语句,如果是多层迭代,它只会退出当前层的循环。

而continue则是停止执行当前的迭代,然后回退循环开始出,开始下一次迭代,如果是多层迭代,它只会停止当前层的迭代,。

for (int i = 1 ; i < 5 ; i++){
	if(i == 3)
		break; // 结束循环
}

for(int i = 1; i < 5; i++){
	for(int j =0 ;  i > j ;j++){
		if(j == 2)
			break; //结束内部的for循环
	}
}

for(int i = 1 ; i<5; i++){
	if(i == 3){
			continue;
	}
		System.out.print("i = " i)
}

int i = 0;
while(true){
	i++;
	int j =i * 27;
	if( j == 1269) break;
	if( i%10 != 0) continue;
	
}

switch : 有时也不会被划归为一种选择语句。根据整数表达式的值,switch语句可以从一系列代码中选出一段去执行。

格式:

switch (integral-selector){
case  integral-value1 : statement; break;
case  integral-value2 : statement; break;
case  integral-value3 : statement; break;
default: statement;
}

其中 integral-selector(整数选择因子)是一个能够产生整数值的表达式,switch能将这个表达式的结果与每一个integral-value(整数值)相比较,若发现相符就执行对应的语句(单一语句或多条语句,其中不需要大括号)。若没有发现相符的将会执行default(默认)语句。
在上面定义中,大家会注意到每个case后面都以break结尾,这样可使执行流程跳转至switch主体的末尾。这是构建switch语句的一种传统方式,但break是可选的。若省略掉break,会继续执行后面的case语句,一直到遇到break为止。
注意最后的default没有break;因为执行流程已到了break的跳转目的地。(放一个也没关系,没啥效果)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值