流程控制基本知识及部分代码演示

    科技2022-08-29  107

    一:流程控制 改变程序自上而下执行的特点,可以根据条件选择性的执行一些代码 重复的执行一些代码,循环操作

    1、if语句(if,if else,if else if() else)

    1.1if语句

    语法:if(表达式){要执行的Java代码}执行过程:根据表达式的结果,true执行if 体中的java代码,否则就不执行注意事项:一个Java程序中可以有多个if,if也可以嵌套使用 如果是嵌套if,先判断最外层的if 语句的表达式,如果表达式的结果为true,再 进入if体中再次进行其他的if语句的表达式的判断。 小例子:根据学生成绩来分及格、优秀和不及格 public class FlowIf { public static void main(String[] args) { double grande = 90; // 在程序中将一个个的if 看做 一块代码 <60 >=80 >=60 if (grande >=60) { if (grande >=80) { System.out.println("优秀"); } if(grande <80) { System.out.println("及格"); } } if (grande < 60) { System.out.println("不及格"); } } }

    1.2if else

    语法:if(表达式){ }else{ }执行:判断表达式的结果,true执行if体中的代码,否则执行else的代码 小例子 public class FlowIfEElse { public static void main(String[] args) { double grande =50; // 在程序中将一个个的if 看做 一块代码 <60 >=80 >=60 if(grande>=60) { if(grande>=80) { System.out.println("优秀"); }else { System.out.println("及格"); } }else { System.out.println("不及格"); } } }

    1.3if else if() else

    语法:if(表达式){ Java代码 }else if(表达式){Java代码}else{}规定:该语句中可以有多个else if只能有一个else,并且else 必须放到最后一个执行原理:先判断if的表达式,如果if的表达式为true则执行if体中的代码,其他的else if和else都不执行。如果if表达式为false则继续进行后面的else if的表达式的判断,直到表达式的结果为true,整个语句结束,否则执行else语句 小例子:根据今天是星期几,来判断今天上什么课 public class FlowIfEElseIf { public static void main(String[] args) { /* * 根据今天是星期几 输出今天上什么课 */ int day=2; if(day==1) { System.out.println("java"); }else if(day==2){ System.out.println("linux"); }else if(day==3) { System.out.println("数据结构"); }else { System.out.println("语文"); } } }

    2、switch语句

    语法:switch(key变量或者值){ case value: break; case value: break; default: break; }执行过程:用switch后面的值与case后的每一个value值进行比较,会执行相等case后面的语句。如果该case后没有break后面的所有代码都将执行。直到遇到break,default默认必须执行的代码。规定:case后面的value值的类型必须与key的类型一致 小例子:根据今天是星期几来判断今天上什么课 public class FlowSwitch { public static void main(String[] args) { int day = 5; // 使用switch语句 switch (day) { case 1: System.out.println("java01"); break; case 2: System.out.println("java02"); break; case 3: System.out.println("java03"); break; case 4: System.out.println("java04"); break; case 5: System.out.println("java05"); break; case 6: System.out.println("java06"); break; case 7: System.out.println("java07"); break; default: System.out.println("今天不上课"); } System.out.println("===================="); } }

    循环的三要素:初始化变量,循环条件,变量更新 循环的作用:重复的做一件事,Java中循环的作用,多次执行同样的Java代码 初始化变量 判断是的起始值 循环条件 决定循环中的java代码是否可以执行 变量更新 为了改变循环条件 在某个时刻将循环停止

    3.while do while

    3.1、while

    语法:while(表达式){ Java代码 }执行:判断表达式的结果,结果为true执行Java代码注意:程序执行到while语句的时候先进行表达式的判断,循环有可能一次也不执行 3.2、do while语法:do {Java代码 }while(表达式)执行:程序先执行一遍,再判断表达式的结果,结果为true则执行Java代码注意:程序执行带while语句的时候先执行一遍,再进行表达式的判断,循环中的代码至少执行一次常用作用:让程序执行起来,使用设置标记的做法来停止循环 小例子:逢3过 //逢3过 1-40 数字带3 或者3的倍数 就喊过 int num=1; while(num<=40) { //该判断 if(num%3==0 || num==3 || num/10==3) {//3的倍数 System.out.println(num+"=======过"); }else { System.out.println(num); } num++; }

    4.for( for foreach )

    语法:for(; ;){ Java代码 }执行:根据表达式的结果判断,结果为true则执行Java代码,结果为false不执行。根据变量更新停止循环小例子:一班有5 人,二班有8人,输出他们的编号 public class ForDemo01 { public static void main(String[] args) { //每个班级人数不一致 for(int i=1;i<3;i++) { System.out.println("第"+i+"班的学生=========== "); //输出每个班的学生编号 1---5 int num=8; if(i==1) { num=5; } for(int j=1;j<=num;j++) { System.out.println("编号是:"+j); } } } }

    4.1 break continue return三者之间的区别

    该关键字是用来结束循环的break:结束本次的所有循环,停止后面的所有代码 continue:结束本次循环,进入下一次循环,结束当前循环的本次循环,进入下一次循环 return:结束当前方法main之后的所有操作 代码示例: A:break的定点跳出 public class ForBreak01 { public static void main(String[] args) { //第一个人 操作第一遍 的时候 输出5 之后 就将所有操作全部结束 two:for (int k = 1000; k <1002; k++) { System.out.println("===========" + k + "=========="); for (int i = 1; i < 3; i++) { System.out.println("===========第" + i + "遍=========="); for (int j = 1; j <= 10; j++) { System.out.println(j); if (j == 5) { break two; } } } }

    4.2、循环的嵌套使用:

    循环操作大部分是为了数据的遍历的外层循环控制行,内层循环控制列外层循环执行一次,内层循环执行一遍 小例子:99乘法表 public class NNTable { public static void main(String[] args) { for (int i =1; i <=9; i++) { //行号 等于当前行的列数 i 为行号 j 控制列数的 for (int j = 1; j <=i; j++) { System.out.print(j+"*"+i+"="+(i*j)+" "); } System.out.println();//换行 } } }
    Processed: 0.008, SQL: 9