• 从零开始学JAVA(03):流程控制语句


     

    目录

    一、if-else

    二、for语句

    三、Break语句

    四、continue语句

    五、代码块和变量的作用域

    六、while语句

    七、do-while语句 

    八、switch语句 


    • 代码块的执行是顺序执行
    • 只要程序运行过程中不出错,就会一行一行的向下顺序执行
    • 大括号括起来的就是代码块
    • 代码块也叫体,比如:for循环体,main方法体

    一、if-else

    if (boolean 值){

       if的语句块;

    } else {

       else的语句块;

    }

    1. public class IfElse {
    2. public static void main(String[] args) {
    3. int num = 3;
    4. boolean flag = true;
    5. if (flag) {
    6. num += 2;
    7. System.out.println(num);
    8. } else {
    9. System.out.println(num);
    10. }
    11. }
    12. }
    13. // 如果语句中只有一行,那么可以省略大括号
    14. public class IfElse {
    15. public static void main(String[] args) {
    16. int num = 3;
    17. boolean flag = true;
    18. if (flag)
    19. System.out.println(num + 2);
    20. else
    21. System.out.println(num);
    22. }
    23. }

    二、for语句

    for (初始语句; 循环体条件表达式; 循环体后语句) {

         for循环体

    }

    1. public class ForStatement {
    2. public static void main(String[] args) {
    3. char charVar = '梁';
    4. int intVar = charVar;
    5. for (int i = 0; i < 10; i++) {
    6. System.out.println((charVar + i) + "\t" + (char) (charVar + i));
    7. }
    8. }
    9. }

    三、Break语句

    • break语句可以结束任何循环
    1. public class ForStatement {
    2. public static void main(String[] args) {
    3. char charVar = '梁';
    4. int intVar = charVar;
    5. for (int i = 0; i < 10; i++) {
    6. if (i == 5) {
    7. break;
    8. }
    9. System.out.println((charVar + i) + "\t" + (char) (charVar + i));
    10. }
    11. }
    12. }

    四、continue语句

    • continue语句可以结束档次循环的执行,开始下一次循环体的执行
    1. public class ForStatement {
    2. public static void main(String[] args) {
    3. char charVar = '梁';
    4. int intVar = charVar;
    5. for (int i = 0; i < 10; i++) {
    6. if (i == 5) {
    7. continue;
    8. }
    9. System.out.println((intVar + i) + "\t" + (char) (intVar + i));
    10. }
    11. }
    12. }

    五、代码块和变量的作用域

    • 代码块内部的代码可以访问代码块外部的变量,反之则不行
    • 一个代码块结束的时候,内部的变量也就随之消失了
    • 内层命名空间不可以重复定义外层代码块的变量,但是可以使用外层代码块的变量
    • 同一个命名空间中的变量不可以重名
    • 为了避免变量名冲突,所以必须要有命名空间
    1. public class Example {
    2. public static void main(String[] args) {
    3. for (int i = 1; i < 10; i++) {
    4. String line = "";
    5. for (int j = 1; j < 10; j++) {
    6. if (j > i) {
    7. break;
    8. }
    9. line += i + "*" + j + "=" + (i * j) + "\t";
    10. }
    11. System.out.println(line);
    12. }
    13. }
    14. }

    六、while语句

    • 条件表达式的结果是一个Boolean值,如果为true,则执行循环体,如果为false,则循环结束
    • while循环体是一个代码块。所以while循环也是可以嵌套别的语句的,包括while语句,for语句,if-else语句等

    while (条件表达式) {

            while循环体

    }

    1. public class Example {
    2. public static void main(String[] args) {
    3. int n = 10;
    4. int dividend = 100;
    5. int divisor = 89;
    6. int found = 0;
    7. while (found < n) {
    8. if (dividend % divisor == 0) {
    9. found++;
    10. System.out.println(dividend + "可以整除" + divisor + "商为" + (dividend / divisor));
    11. }
    12. dividend++;
    13. }
    14. }
    15. }

    七、do-while语句 

    • do-while语句的循环体至少可以执行一次

    do {

            while循环体

    } while (条件表达式);

    1. public class Example {
    2. public static void main(String[] args) {
    3. int n = 2;
    4. do {
    5. System.out.println("执行");
    6. } while (n < 2);
    7. }
    8. }

    八、switch语句 

    • switch语句中用于比较的值,必须是int
    • switch语句适用于有固定多个目标值匹配,然后执行不同逻辑的情况
    • 必须使用break语句显式的结束一个case语句,否则switch语句会从第一个match的case语句开始执行直到遇到break语句或者switch语句结束
    • default语句是可选的,如果所有的case语句都没有匹配上,才会执行default中的代码

    switch (用于比较的int的值) {

            case 目标值1, 对应一个if else{xxx};

                    匹配后可以执行的语句

            case 目标值2, 不可以和别的case字句重复;

                    匹配后可以执行的语句

            default (对应最后的else,可选)

                    default语句

    }

    1. public class Example {
    2. public static void main(String[] args) {
    3. switch (10) {
    4. case 1:
    5. System.out.println("1");
    6. break;
    7. case 10:
    8. System.out.println("10");
    9. break;
    10. case 2:
    11. System.out.println("2");
    12. break;
    13. default:
    14. System.out.println("没找到对应的");
    15. }
    16. }
    17. }

     

  • 相关阅读:
    Taurus.MVC WebAPI 入门开发教程1:框架下载环境配置与运行(含系列目录)。
    基金交易场景下,如何利用 Apache APISIX 来稳固 API 安全
    Less学习记录
    Sa-Token 多账号认证:同时为系统的 Admin 账号和 User 账号提供鉴权操作
    Docker安装nacos单机版,配置发布时报错:发布失败,请检查参数是否正确
    服务器中了locked勒索病毒怎么处理,locked勒索病毒解密,数据恢复
    OpenMV与STM32之间的通信(附源码)
    基于高斯模型的运动目标检测(车辆检测),Matlab实现
    springboot供应商管理系统毕业设计源码121518
    硬件调试-ILA
  • 原文地址:https://blog.csdn.net/m0_47135993/article/details/128066280