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
    }
}
相关推荐
洗发水很好用5 分钟前
新版IDEA提示@Autowired不建议字段注入
java·ide·intellij-idea
model20057 分钟前
sahi目标检测java实现
java·算法·目标检测
LG.YDX30 分钟前
java:练习
java
美若黎明@32 分钟前
C# 路径操作
开发语言·c#
源代码•宸41 分钟前
Leetcode—322. 零钱兑换【中等】(memset(dp,0x3f, sizeof(dp))
c++·算法·leetcode·职场和发展·dp
机械心42 分钟前
最优化理论与自动驾驶(一):概述
人工智能·算法·自动驾驶
给自己做减法44 分钟前
排序算法快速记忆
java·算法·排序算法
新知图书1 小时前
Rust的常量
算法·机器学习·rust
难以触及的高度1 小时前
source ~/.bash_profile有什么用
开发语言·bash
计算机学姐1 小时前
基于微信小程序的食堂点餐预约管理系统
java·vue.js·spring boot·mysql·微信小程序·小程序·mybatis