Java复习四 --- 流程控制

本文详细介绍了Java中的流程控制结构,包括顺序结构、分支结构(if语句和switch语句)及循环结构(while循环、do-while循环和for循环)。通过实例展示了不同控制结构的应用场景及其特点。

Java复习四 — 流程控制

顺序结构

任何编程语言中最常见的程序结构就是顺序结构,顺序结构就是程序从上到下逐行执行,中间没有任何的判断和跳转.

分支结构

Java提供了两种常见的分支控制结构 —> if 语句 和 switch 语句.

if条件语句
  • 第一种形式
if(logic expression){
    statement;
}
  • 第二种形式
if(logic expression){
	statement;
}else{
    statement;
}
  • 第三种形式
if(logic expression){
	statement;
}else if(logic expression){
    statement;
}...
 else{
	statement;
}

if , else , else if 后的条件执行体要么是一个花括号括起来的代码块,要么是以分号作为结束符的一行语句,甚至可能是一个空语句 : 空语句就是一个分号,如果省略了if后面的执行体的花括号,则if条件只控制到紧跟该语句的第一个分号处.


switch分支语句

switch语句是由一个控制表达式和多个case标签组成,且控制表达式的数据类型必须为 byte short int char String 枚举 这几种类型.

switch(expression){
    case condition1:
    {
       statement(s);
       break;
    }
    case condition2:
    {
       statement(s);
       break;
    }
    case condition3:
    {
       statement(s);
       break;
    }
    default:
    {
       statement(s);
    }
}

这种分支语句先对 expression 求值, 然后依次匹配 condition1, condition2, condition3… , 遇到匹配的值即执行相应的代码,如果 case 标签后的值都不与 expression 表达式的值相同,则执行default语句.

case穿透问题 :
switch('B'){
    case 'A':
    {
       System.out.println("A");
       break;
    }
    case 'B':
    {
      System.out.println("B");
    }
    case 'C':
    {
       System.out.println("C");
    }
    default:
    {
      System.out.println("Default");;
    }
}

注意 : case B 与 case C 语句中没有 break 语句, 因此会输出 : B C Default.

因为当匹配好了case之后,就不会再向下匹配case,直到遇到break语句才会终止运行.

循环结构

循环语句是满足循环条件的情况下返回执行某一段代码,这段被重复执行的代码被称为循环体.

循环语句包括四个部分 :

  • 初始化条件
  • 循环条件
  • 循环体
  • 迭代语句
while 循环
[init_statement];	//初始化条件
while(test_expression){	// test_expression为循环条件 花括号内为循环体
	statement;	
	[iteration_statement];	//迭代语句 通常用来控制循环的结束
}

eg:

int i = 100;
while(i>0){
    System.out.println(i);
    i--;
}

特点 : 先判断 后循环

do while 循环
[init_statement];
do{
    statement;
    [iteration_statement];
}while(test_expression);

eg:

int i = 100;
do{
    System.out.println(i);
    i--;
}while(i > 0);

特点 : 先执行 后判断

for 循环
/*
    init_statement : 初始化时可以声明多个变量,这些变量应该具有相同的数据类型.
    eg: int b = 0 , s = 0, p = 0;
    test_expression : 循环条件也可以包含逻辑运算符的表达式
    eg: b>0 && s<0 && p>0;
*/
for([init_statement];[test_expression];[iteration_statement]){
    statement;
}

执行流程 :

在这里插入图片描述

特点 : for循环更加的简洁, 大部分情况下, for 循环可以代替 while , do while 循环.

嵌套循环

如果把一个循环放入另一个循环中,那么可以形成循环嵌套.

可以是 for 循环 嵌套 while 循环

可以是 for 循环 嵌套 for 循环

可以是 while 循环 嵌套 while 循环

for(int i = 0; i <= 5; i++){
    for(int j = 0; j <= 5; j++){
        System.out.println("i="+i+",j="+j);
    }
}
控制循环结构
break

终止整个循环,即跳出本层循环.

continue

结束本次循环,继续下次循环.

return

不是专门用来结束循环的,而是结束整个方法的.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值