流程控制语句:

            在一个程序执行过程中,各条件语句的执行顺序的效果会有直接影响的。

一、顺序结构
代码库:Demo01Sequence.java

// 顺序结构
public class Demo01Sequence {
    public static void mAIn(String[] args) {
        System.out.println("今天天气不错");
        System.out.println("挺风和日丽的");
        System.out.println("我们下昼没课");
        System.out.println("这简直挺爽的");
    }
}

流程图

顺序结构流程图

二、判断语句
2.1、if语句第一种花样:

/*
首先判断关系表达式看其效果是true照样false
若是是true就执行语句体
若是是false就不执行语句体

if(关系表达式){
        语句体;
}

单if语句流程图:

代码库:Demo02If.java

// 单if语句
public class Demo02If {
    public static void main(String[] args) {
        System.out.println("今天天气不错,正在压马路……突然发现一个快乐的地方:网吧");
        int age = 19;
        if (age >= 18) {
            System.out.println("进入网吧,最先high!");
            System.out.println("遇到了一群猪队友,最先骂街。");
            System.out.println("感受不爽,结账走人。");
        }
        System.out.println("回家用饭");
    }
}

2.2、判断if..else语句
if语句的第二种花样:if......else

/*
首先判断关系表达式看其效果是true照样false
若是是true就执行与详细1
若是是false 就执行与详细2
*/

if (关系表达式);{
    语句体1;
}else{
    语句体2;
}

if....else语句流程图

代码库:Demo03IfElse.java

// 尺度的if-else语句
public class Demo03IfElse {
    public static void main(String[] args) {
        int num = 666;

        if (num % 2 == 0) { // 若是除以2能够余数为0,说明是偶数
            System.out.println("偶数");
        } else {
            System.out.println("奇数");
        }
    }
}

2.3、判断语句(复合扩展的if语句)
if语句第三种花样:if....else if.....else

/*
首先判断关系表达式1看其效果是true照样false
若是是true就执行语句体1
若是是false就继续判断关系表达式2看其效果是true照样false
若是我是true就执行语句体2
若是是false就继续判断关系表达式....看其效果是true照样false
....
若是没有任何表达式为true,就执行语句体n+1.
*/
if (判断条件1){
    执行语句1;
    }else if(判断条件2){
    执行语句2;
}
...
}else if (判断条件n){
          执行语句n;
          }else{
    执行语句n+1;
}

if...else扩展流程图
代码库:Demo04IfElseExt.java

// x和y的关系知足如下:
// 若是x >= 3,那么y = 2x + 1;
// 若是-1 < x < 3,那么y = 2x;
// 若是x <= -1,那么y = 2x – 1;
public class Demo04IfElseExt {
    public static void main(String[] args) {
        int x = -10;
        int y;
        if (x >= 3) {
            y = 2 * x + 1;
        } else if (-1 < x && x < 3) {
            y = 2 * x;
        } else {
            y = 2 * x - 1;
        }
        System.out.println("效果是:" + y);
    }
}

案例一:
代码库:Demo05IfElsePractise.java

/*
制订考试成就,判断成就的品级;
    90-100  优异
    80-89   好
    70-79   良
    60-69   及格
    60以下    不及格
*/
public class Demo05IfElsePractise {
    public static void main(String[] args) {
        int score = 120;
        if (score >= 90 && score <= 100) {
            System.out.println("优异");
        } else if (score >= 80 && score < 90) {
            System.out.println("好");
        } else if (score >= 70 && score < 80) {
            System.out.println("良");
        } else if (score >= 60 && score < 70) {
            System.out.println("及格");
        } else if (score >= 0 && score < 60) {
            System.out.println("不及格");
        } else { // 单独处置界限之外的不合理情形
            System.out.println("数据错误");
        }
    }
}

2.4、if语句和三元运算符的交换:
代码库:Demo06Max.java

// 问题:使用三元运算符和尺度的if-else语句划分实现:取两个数字当中的最大值
public class Demo06Max {
    public static void main(String[] args) {
        int a = 105;
        int b = 20;

        // 首先使用三元运算符
        // int max = a > b ? a : b;

        // 使用今天的if语句
        int max;
        if (a > b) {
            max = a;
        } else {
            max = b;
        }

        System.out.println("最大值:" + max);
    }
}

三、switch选择语句:
3.1、选择结构_尺度的switch语句

// switch 语句花样
/*
首先计算出表达式的值
其次,和case依次对照,一旦有对应的值,就会执行响应的语句,在执行的过程中,入到break就会竣事
最后,若是所有的case都和表达式的值不匹配,就会执行default语句体部门,然后程序竣事掉。
*/

switch(表达式){
    case 常量值1:
        语句体1;
        break;
    case 常量值2:
        语句体2;
        break;
        ...
        default:
        语句体n+1;
        break;
}

,

皇冠体育APP

www.huangguan.us是一个开放皇冠代理APP下载、皇冠会员APP下载、皇冠线路APP下载、皇冠登录APP下载的平台,皇冠体育APP上最新登录线路、新2皇冠网址更新最快,皇冠体育APP开放皇冠会员注册、皇冠代理开户等业务。

,

代码库:Demo07Switch.java

public class Demo07Switch {
    public static void main(String[] args) {
        int num = 10;

        switch (num) {
            case 1:
                System.out.println("星期一");
                break;
            case 2:
                System.out.println("星期二");
                break;
            case 3:
                System.out.println("星期三");
                break;
            case 4:
                System.out.println("星期四");
                break;
            case 5:
                System.out.println("星期五");
                break;
            case 6:
                System.out.println("星期六");
                break;
            case 7:
                System.out.println("星期日");
                break;
            default:
                System.out.println("数据不合理");
                break; // 最后一个break语句可以省略,然则强烈推荐不省略
        }
    }
}

3.2、case穿透性:
代码库:Demo08SwitchNotice.java

/*
switch语句使用的注意事项:

1. 多个case后面的数值不可以重复。

2. switch后面小括号当中只能是下列数据类型:
基本数据类型:byte/short/char/int
引用数据类型:String字符串、enum枚举

3. switch语句花样可以很天真:前后顺序可以颠倒,而且break语句还可以省略。
“匹配哪一个case就从哪一个位置向下执行,直到遇到了break或者整体竣事为止。”
*/
public class Demo08SwitchNotice {
    public static void main(String[] args) {
        int num = 2;
        switch (num) {
            case 1:
                System.out.println("你好");
                break;
            case 2:
                System.out.println("我好");
                // break;
            case 3:
                System.out.println("大家好");
                break;
            default:
                System.out.println("他好,我也好。");
                break;
        } // switch
    }
}

四、循环语句、
4.1、for循环
代码库:Demo09For.java

/*
循环结构的基本组成部门,一样平常可以分成四部门:

1. 初始化语句:在循环最先最初执行,而且只做唯一一次。
2. 条件判断:若是建立,则循环继续;若是不建立,则循环退出。
3. 循环体:重复要做的事情内容,若干行语句。
4. 步进语句:每次循环之后都要举行的扫尾事情,每次循环竣事之后都要执行一次。
*/
public class Demo09For {
    public static void main(String[] args) {
        for (int i = 1; i <= 100; i++) {
            System.out.println("我错啦!原谅我吧!" + i);
        }
        System.out.println("程序住手");
    }
}
/* for循环语句花样:
for (初始化表达式1;布尔表表达式2,步进表达式3){
    循环体4
}

执行流程:
        执行顺序:1234>234>234....2不知足位置。
        1卖力完成循环变量初始化
        2卖力判断知足循环条件,不知足则跳出循环
        3详细执行的语句
        4循环后,循环条件所涉及变量的转变情形
*/

for循环初始图
4.2、while循环
代码库:Demo10While.java

/*
while循环有一个尺度花样,另有一个扩展花样。

尺度花样:
while (条件判断) {
    循环体
}

扩展花样:

初始化语句;
while (条件判断) {
    循环体;
    步进语句;
}
*/
public class Demo10While {
    public static void main(String[] args) {
        for (int i = 1; i <= 10; i++) {
            System.out.println("我错啦!" + i);
        }
        System.out.println("=================");

        int i = 1; // 1. 初始化语句
        while (i <= 10) { // 2. 条件判断
            System.out.println("我错啦!" + i); // 3. 循环体
            i++; // 4. 步进语句
        }
    }
}

while循环尺度花样
4.3:do while循环语句:
代码库:Demo11DoWhile.java

/*
do-while循环的尺度花样:

do {
    循环体
} while (条件判断);

扩展花样:

初始化语句
do {
    循环体
    步进语句
} while (条件判断);
*/
public class Demo11DoWhile {
    public static void main(String[] args) {
        for (int i = 1; i <= 10; i++) {
            System.out.println("原谅你啦!起来吧!地上怪凉!" + i);
        }
        System.out.println("===============");

        int i = 1; // 1. 初始化语句
        do {
            System.out.println("原谅你啦!起来吧!地上怪凉!" + i); // 3. 循环体
            i++; // 4. 步进语句
        } while (i <= 10); // 2. 条件判断
    }
}

do while循环结构图

实例一:
代码库:Demo12HundredSum.java

/*
问题:求出1-100之间的偶数和。

思绪:
1. 既然局限已经确定了是1到100之间,那么我就从1、2、3……一直到100这么多数字一个一个举行检查。
2. 总共有100个数字,并非所有数字都能用。必须要是偶数才能用,判断(if语句)偶数:num % 2 == 0
3. 需要一个变量,用来举行累加操作。也就好比是一个存钱罐。
*/
public class Demo12HundredSum {
    public static void main(String[] args) {
        int sum = 0; // 用来累加的存钱罐

        for (int i = 1; i <= 100; i++) {
            if (i % 2 == 0) { // 若是是偶数
                sum += i;
            }
        }
        System.out.println("效果是:" + sum);
    }
}       //效果是:2550

4.4、do、for、while三种循环的区别
代码库:Demo13LoopDifference.java

/*
三种循环的区别。

1. 若是条件判断从来没有知足过,那么for循环和while循环将会执行0次,然则do-while循环会执行至少一次。
2. for循环的变量在小括号当中界说,只有循环内部才可以使用。while循环和do-while循环初始化语句本来就
在外面,以是出来循环之后还可以继续使用。
*/
public class Demo13LoopDifference {
    public static void main(String[] args) {
        for (int i = 1; i < 0; i++) {
            System.out.println("Hello");
        }
        // System.out.println(i); // 这一行是错误写法!由于变量i界说在for循环小括号内,只有for
        循环自己才能用。
        System.out.println("================");

        int i = 1;
        do {
            System.out.println("World");
            i++;
        } while (i < 0);
        // 现在已经超出了do-while循环的局限,我们仍然可以使用变量i
        System.out.println(i); // 2
    }
}

4.5、条件控制语句:跳出语句:break continue
break
代码库:Demo14Break.java

/*
break关键字的用法有常见的两种:

1. 可以用在switch语句当中,一旦执行,整个switch语句马上竣事。
2. 还可以用在循环语句当中,一旦执行,整个循环语句马上竣事。打断循环。

关于循环的选择,有一个小建议:
通常次数确定的场景多用for循环;否则多用while循环。
*/
public class Demo14Break {
    public static void main(String[] args) {
        for (int i = 1; i <= 10; i++) {
            // 若是希望从第4次最先,后续全都不要了,就要打断循环
            if (i == 4) { // 若是当前是第4次
                break; // 那么就打断整个循环
            }
            System.out.println("Hello" + i);
        }
    }
}

continue一旦执行,马上跳过当上次循环,马上最先下一次循环。
代码库:Demo15Continue.java

/*
另一种循环控制语句是continue关键字。
一旦执行,马上跳过当上次循环剩余内容,马上最先下一次循环。
*/
public class Demo15Continue {
    public static void main(String[] args) {
        for (int i = 1; i <= 10; i++) {
            if (i == 4) { // 若是当前是第4层
                continue; // 那么跳过当上次循环,马上最先下一次(第5层)
            }
            System.out.println(i + "层到了。");
        }
    }
}

五、扩展知识:
5.1、死循环
代码库:Demo16DeadLoop.java

/*
永远停不下来的循环,叫做死循环。

死循环的尺度花样:
while (true) {
    循环体
}
*/
public class Demo16DeadLoop {
    public static void main(String[] args) {
        while (true) {
            System.out.println("I Love Java!");
        }

        // System.out.println("Hello");     //Ctrl+c    住手下来
    }
}

5.2、循环的嵌套
代码库:Demo17LoopHourAndMinute.java

public class Demo17LoopHourAndMinute {
    public static void main(String[] args) {
        for (int hour = 0; hour < 24; hour++) { // 外层控制小时

            for (int minute = 0; minute < 60; minute++) { // 内层控制小时之内的分钟
                System.out.println(hour + "点" + minute + "分");
            }

        }
    }
}