JAVA 流程控制

块作用域

块是指由一对大括号括起来的若干条简单的java语句,块确定了变量的作用域, 一个块可以嵌套在另一个块中;

但是不能再嵌套的两个块中声明同名的变量

条件语句

在java中,条件语句的格式为

if (条件) 语句

当我们要在某个条件为真时执行多条语句, 应该使用语句块

public class Hello {
    public static void main(String[] args) throws IOException {
        while (true){
            Scanner a = new Scanner(System.in);
            int i = a.nextInt();
            if (i>40)System.out.println("大于40");
            else if (i>30)System.out.println("大于30");
            else if (i>20)System.out.println("大于20");
            else if (i>10)System.out.println("大于10");
            else System.out.println("小于10");
        }
    }
}

else子句与最邻近的if构成一组

循环语句

while循环

while (条件) 语句

当条件为true时, while循环执行后面的语句一次, 如果开始循环时条件的值就是false, 则while循环体一次也不执行

while语句会首先检测循环条件, 循环体中的代码有可能不被执行, 如果希望循环体至少执行一次, 则应该将检测条件放在最后. 使用do/while循环语句可以实现这种操作方式.

do/while循环

do 语句 while (条件)

这种循环语句先执行语句, 在检测循环条件; 然后重复语句, 再检测循环条件

for循环

for(初始化语句;条件语句;结束语句) 循环体

for语句的第一部分通常用于对计数器的初始化;第二部分给出每次新一轮循环执行前要检测的循环条件; 第三部分指示如何更新计数器.

如果在for语句内声明一个变量, 这个变量就不能在循环体之外使用,

for each循环

for each循环可以依次处理每个元素集合中的元素, 不必为指定下标而分心

for (元素: 集合) 语句;

多重选择

在处理多个选项时, 使用if-else显得比较笨重,可以使用switch语句

switch(计算表达式){
    case 值1:
        语句1;
        break
    case 值2:
        语句2;
         break
     default:
         语句
         break;
}

case标签可以是

  • 类型为char, byte, short或int的常量表达式;
  • 枚举常量
  • 从java se7开始,case标签还可以是字符串字面量

需要注意的是break语句是必须的, 否则匹配成功后下面所有的语句会执行, 直至遇到break

中断流程控制语句

java中goto作为保留字, 但是java中有着类似的功能: 带标签的break

一个不带标签的break语句,打印1-10后就会结束

public class Hello {
    public static void main(String[] args) throws IOException {
        int a;
        http://www.wengang.top
        a = 1;
        while (true){
            if (a>10){
                break;
            }
            System.out.println(a);
            a++;
        }
    }
}

带标签的break

...

posted @ 2018-12-31 21:11  瓜田月夜  阅读(115)  评论(0)    收藏  举报