Java教程

三、程序流程控制

本文主要是介绍三、程序流程控制,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

程序流程控制

是什么

  • 就是控制代码怎么去执行

顺序结构

  • 按照从上到下的顺序执行

分支结构

  • if

    • 作用:可以判断条件来决定执行哪个分支

    • 格式:

      • if(条件表达式){语句体;}

      • if(条件表达式){语句体1;}else{语句体2;}

      • if(条件表达式1){语句体1;}else if(条件表达式2){语句体2;}……else{语句体n+1;}

  • switch

    • 作用:根据表达式的值来进行匹配选择对应的分支执行

    • 格式:

      • switch(表达式){

      • case 值1:执行代码……;break;……

      • default:执行代码n;}

    • if和switch的区别

      • 都是做分支的

      • if的功能更强大:适合做区间匹配

      • 如果是值匹配的操作建议用switch,格式清晰,性能较好

  • switch的注意事项

    • 表达式类型只能是:byte、short、int、char,JDK5开放支持枚举,JDK7开始支持String,不支持double、float、long

    • case给出的值不允许重复,只能是字面量,不能是变量

    • 不要忘记写break,否则会出现穿透现象

  • switch的穿透性

    • 是什么?

      • switch中没有写break,遇到了这个case会一直往下走,直到遇到break才会跳出

    • 适合做什么?

      • 多个值对应的case块的操作是相同的。可以穿透到一个位置集中处理,这样可以提高开发效率,降低代码重复率

循环结构

  • 作用:控制一段代码重复执行多次

  • 分类:

    • for

      • 格式:

        • for(初始化语句;循环条件;迭代语句){

        • 循环体控制语句(重复执行的代码)}

    • while

      • 格式:

        • 初始化语句;while(循环条件){

        • 循环体语句(重复执行的代码);

        • 迭代语句;}

    • do……while

      • 格式:

        • 初始化语句;do{循环体语句(重复执行的代码);

        • 迭代语句;} while(循环条件);

      • 特点:一定会执行一次循环体语句,在判断循环条件

  • 区别:

    • for和while都是先判断后执行,do……while第一次先执行后判断

    • for和while在功能上完全一样,流程也是一样

      • 如果一开始就知道要循环几次用for

      • 如果一开始不知道要循环几次用while

  • 死循环

    • 一直执行下去

    • 写法:

      • for( ; ; ){循环语句;}

      • (经典写法)while(true){循环语句;}

      • do{循环语句;}while(true);

跳转关键字

  • break:跳出并结束当前所在循环的执行,或者结束switch分支的执行

  • continue:

    • 用于跳出当前循环的当次执行,进入下一次循环

    • 只能在循环中使用

案例技术:随机数Random类

  • 作用:产生一个随机数

  • 步骤:

    • 导包(自动导包):import java.util.Random;

    • 创建随机数对象:Random r = new Random();

    • 开始得到随机数:int data = r.nextInt(10); //0~9

  • 产生指定区间的随机数

    • 减加法

      • 1~10==>-1==>(0~9)+1;

    • Java其实给了我们一些直接就能得到指定区间的随机数:

      • Random r = new Random();

      • //10~30

      • for(int i = 0; i < 100; i++){

      • int data = r.nextInt(10,31);

      • System.out.println(data);}

这篇关于三、程序流程控制的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!