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
    }
}
相关推荐
Lhuu(重开版9 小时前
JS:正则表达式和作用域
开发语言·javascript·正则表达式
yqd6669 小时前
SpringSecurity的使用
java·spring
仙俊红10 小时前
Java Map 家族核心解析
java·开发语言
浅念-10 小时前
C语言小知识——指针(3)
c语言·开发语言·c++·经验分享·笔记·学习·算法
Hcoco_me10 小时前
大模型面试题84:是否了解 OpenAI 提出的Clip,它和SigLip有什么区别?为什么SigLip效果更好?
人工智能·算法·机器学习·chatgpt·机器人
一嘴一个橘子10 小时前
springMvc 接收参数、cookie、header
java
BHXDML10 小时前
第九章:EM 算法
人工智能·算法·机器学习
code_li11 小时前
聊聊支付宝架构
java·开发语言·架构
却道天凉_好个秋11 小时前
目标检测算法与原理(三):PyTorch实现迁移学习
pytorch·算法·目标检测
少控科技11 小时前
QT高阶日记01
开发语言·qt