JavaSE:4、流程控制

1、代码块与作用域

变量的使用范围,仅限于其定义时所处的代码块,也就是他的作用域。
目前所说的变量均为局部变量
java 复制代码
public class Main {
    public static  void main(String [] argv)
    {
       int a=10;
        {
            int b=10;
            System.out.println(a);
            System.out.println(b);
        }
        System.out.println(a);
      //  System.out.println(b);   ERROR ,b的作用域在代码块里
    }
}

2、选择结构

if if\else if if \else ......
为真时进入后面代码块或一条语句
java 复制代码
public class Main {
    public static  void main(String [] argv)
    {
       int a=10;
        if(a>10) {
            System.out.println(a);   //不输出
        }
        else System.out.println(a);  //输出
        if(a==10)
            System.out.println(a);//输出
        else if(a>10)  System.out.println(a);//不输出
        
        System.out.println(a);   //输出
     
    }
}
switch语句:
会跳转到匹配的条件一条一条语句遍历。不写break可能会多输出。
只能精确匹配
java 复制代码
public class Main {
    public static  void main(String [] argv)
    {
       int a=11;
        switch (a)
        {
            case 10:System.out.println(10);
                 break;
            case 11:System.out.println(11);
                 break;   //不写break会输出下面的ERROR
            default:System.out.println("ERROR");

        }

    }
}

3、循环结构

for (表达式1;表达式2;表达式3) 循环体;

  • 表达式1:在循环开始时仅执行一次。
  • 表达式2:每次循环开始前会执行一次,要求为判断语句,用于判断是否可以结束循环,若结果为真,那么继续循环,否则结束循环。
  • 表达式3:每次循环完成后会执行一次。
  • 循环体:每次循环都会执行一次循环体。
循环体为代码块或一条语句
java 复制代码
public class Main {
    public static  void main(String [] argv)
    {
       int a=10;
       for(int i=a;i<=15;i++)
           System.out.print(i+" ");
       System.out.println();
       for(;a<=20;a++) {
           System.out.print(a+" ");
       }
    }
}
break跳出循环,continue 进行下一次循环,结束当前循环体
while(循环条件) 循环体;
java 复制代码
public class Main {
    public static  void main(String [] argv)
    {
       int a=10;
       while(a<20)
       {
           System.out.print(a+" ");
           if(a>13)break;
           a++;
       }
       //输出  10 11 12 13 14 
    }
}

do{ }while();

java 复制代码
public class Main {
    public static  void main(String [] argv)
    {
       int a=10;
       do
       {
           System.out.print(a+" ");
           if(a>13)break;
           a++;
       }  while(a<20);
       //输出  10 11 12 13 14
    }
}
相关推荐
Shaoshing23 分钟前
消息顺序
java·开发语言
云水初33 分钟前
【项目篇】基于LanGraph的自动处理客服邮件的 Agent汇总
开发语言·笔记·python·学习·fastapi·langgraph
茉莉玫瑰花茶34 分钟前
GO [ 内存与变量逃逸分析 ]
开发语言·后端·golang
我命由我123451 小时前
SQL 检测脚本
java·数据库·sql·功能测试·单元测试·压力测试·可用性测试
lhh_qrsly1 小时前
OTA 加密完整方案(嵌入式 IoT 常用)
开发语言·物联网·php
Jsundoku1 小时前
第六章 机器学习 -- 支持向量机
算法·机器学习·支持向量机
Nontee1 小时前
Quartz 新手入门:定时任务的两个承诺
开发语言·windows·python
Hpc_Fun1 小时前
GPU 工作站品牌怎么比?五把可核验尺子、加权评分脚本与场景重排
java·信创·gpu工作站·品牌对比·加权评分
const_qiu1 小时前
第四章 03:4.3 Tools —— 让 Agent 会用工具
java·人工智能