流程控制—顺序、循环、判断

顺序结构

顺序结构是任何一个算法都离不开的一种基本算法结构(从上到下一步一步计算下来

选择结构

if单选择结构

if (布尔表达式){

​ //如果布尔表达值为ture将执行的语句

}

if (str.equals("Hello")){      //str为用户输入的字符串,equals是判断字符串是否一致使用的语句。
	System.out.println(str);
}
	System.out.println("End");
}

if 双选择结构

if (布尔表达式){

​ //如果布尔表达值为ture将执行的语句

}else{

​ ////如果布尔表达值为false将执行的语句

}

if (score>=60){     //score是考试成绩
	System.out.println("及格");
}else {
 	System.out.println("不及格");
}

if多选择结构

if (布尔表达式 1){

​ //如果布尔表达式 1值为ture将执行代码

}else if(布尔表达式 2){

​ //如果布尔表达式 2值为ture将执行代码

}else if(布尔表达式 3){

​ //如果布尔表达式 3值为ture将执行代码

}else {

​ //如果以上布尔表达式 都不为ture将执行代码

}

 if (score==100){
        System.out.println("恭喜满分");
    }else if (score<100&&score>=90){
        System.out.println("A");
    }else if (score<90&&score>=80){
        System.out.println("B");
    }else if (score<80&&score>=70){
        System.out.println("C");
    }else if (score<70&&score>=60){
        System.out.println("D");
    }else if (score<60&&score>=0){
        System.out.println("不及格");
    }else {
        System.out.println("成绩不合法");
    }

嵌套的if选择结构

if (布尔表达式 1){

​ //如果布尔表达式 1值为ture将执行代码

​ if (布尔表达式 2){

​ //如果布尔表达式 2值为ture将执行代码

​ }

}

switch多选择结构

switch 语句中的变量类型可以是:

  • byte 、short、int、或者char。
  • java SE 7开始支持字符串String类型同时case标签必须为字符串常量或字面量。
语法格式:
switch (expression){
	case  value:
		//语句
	break;     //可选,加 break防止case穿透 。不加会在相应值处开始一条一条向下全部执行。
	case  value:
		//语句
	break;     //可选
		//	你可以有很多个case语句
	default:  //可选
		//语句
}

循环结构

while循环

while(布尔表达式){
    //循环类容
}
  • 只要布尔表达式为ture,循环就会一直执行 如果没有使表达式失效的方式就形成死循环,避免死循环
  • 大多时候我们需要让循环停下来,需要一个让表达式失效的方式

do....while循环

对于while循环,如果不能满足条件就不循环,有的时候我们需要即使不满足条件也至少循环一次。

  • do......while 循环至少执行一次
do {
    //代码语句
}while(布尔表达式);

while与do...while区别

while条件不满足就不会做循环。(先判断后循环)

do...while至少执行一次再循环。(先循环在判断)

public class DoWhileDemo02 {
    public static void main(String[] args) {
        int i=0;
        while (i<0){   //while循环最终没有成功循环因为布尔表达式不成立。
            System.out.println(i);
            i++;
        }
        System.out.println("=======================");
        do {       	  //do....while运行了一次。
            System.out.println(i);
            i++;
        }while (i<0);
    }
}

for循环

语法格式:

for(初始化;布尔表达式;更新){
    //代码语句
}
  • for循环使循环更简单
  • for循环是支持迭代的通用结构,最有效最灵活的循环结构
  • for循环执行的次数是在执行前就确定的
        //初始化//条件判断//迭代
  for (int i=1;i<=100;i++){
            System.out.println(i);
        }

        System.out.println("for循环结束!");

快捷键: ( 100.for +回车) 就自动生成for循环了

*** 关于for语句的说明***

  1. 最先执行初始化步骤。可以声明一种类型,但可以初始化一个或多个循环控制变量,也可以是空语句

  2. 然后,检查布尔表达式的值是否为Ture,是就执行循环体,如果为Flase循环终止;开始执行循环体下面的指令

  3. 执行一次循环后,更新循环控制变量(迭代因子控制循环变量的增减)

  4. 再次检查布尔值循环1---3的步骤;

  5. for 死循环语句:
    
    for( ; ; ){ 
       //语句
    }
    

*案例:循环输出1---1000之间能被5整除的数,并且每输出三个数换行;

public class ForDemo02 {
    public static void main(String[] args) {
        //用for或者while循环输出1---1000之间能被5整除的数,并且每输出三个数换行;
        for (int i = 0; i <= 1000; i++) {
            if (i%(5*3)==0){
//                System.out.println();//换行表达方式一
                System.out.print("\n");//换行表达方式二
            }
            if (i%5==0){
                System.out.print(i+"\t");//输出i后自动空一格TAB距离
            }

        }
    }
//    println 输出完会换行
//    print   输出完不换行
}

增强for循环

主要用于数组或集合的增强型for循环。

语句格式:

for (声明语句 : 表达式){
    //代码句子
}
  • 声明语句:声明新的局部变量,该变量的类型和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。
  • 表达式:表达式是要访问的数组名,或者是返回值为数组的方法。
posted @ 2022-07-31 10:55  小墩  阅读(122)  评论(0)    收藏  举报