Java流程控制语句

一、流程控制语句

  Java的流程控制语句主要包括三大类:顺序结构、分支结构和循环结构。 java

二、顺序结构

  顺序结构语句是按照代码的顺序,从上往下执行。算法

public static void main(String[] args){ 
    System.out.println(1); 
    System.out.println(2); 
    System.out.println(3); 
}

结果输出:ide

1
2
3大数据

三、分支结构

  分支结构主要包括两种类型:if -- else if -- else、switchui

3.一、if语句

  首先判断关系表达式看其结果是true仍是false,若是是true就执行语句体 ,若是是false就不执行语句体 。3d

Java流程控制语句

3.二、if -- else语句

  首先判断关系表达式看其结果是true仍是false,若是是true就执行语句体1,若是是false就执行语句体2。
Java流程控制语句code

3.三、if -- else if -- else语句

  首先判断关系表达式1,看其结果是true仍是false。若是是true就执行语句体1,若是是false就继续判断关系表达式2,看其结果是true仍是false。若是是true就执行语句体2,若是是false就继续判断关系表达式,看其结果是true仍是false …若是没有任何关系表达式为true,就执行语句体n+1。
Java流程控制语句blog

3.四、三元运算符

  三元运算符格式:(表达式) : 表达式为True时返回的内容 ? 表达式为False时返回的内容。if语句能够实现与三元运算符进行互换:字符串

public static void main(String[] args) { 
    int a = 10; 
    int b = 20; 
    //定义变量,保存a和b的较大值 
    int max; 
    if(a > b) { 
        max = a; 
    } else { 
        max = b; 
    }
    //能够上述功能改写为三元运算符形式 
    max = a > b ? a:b; 
}

3.五、switch语句

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

  执行流程首先计算出表达式的值,其次和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程当中,遇到break就会结束。最后,若是全部的case都和表达式的值不匹配,就会执行default语句体部分,而后程序结束掉。
  switch语句中,表达式的数据类型能够是byte,short,int,char,enum(枚举),JDK7后能够接收字符串。
  在switch语句中,若是case的后面不写break,将出现穿透现象,也就是不会在判断下一个case的值,直接向后运行,直到遇到break,或者总体switch结束。it

四、循环结构

  循环结构包括三种类型:for循环,while循环,do...while...循环

4.一、for循环

格式:

for(初始化表达式①; 布尔表达式②; 步进表达式④){ 
    循环体③ 
}

执行顺序为1234 --> 234 --> 234 直到2为false为止。

4.二、while循环

格式:

初始化表达式① 
while(布尔表达式②){ 
    循环体③ 
    布尔表达式④ 
}

执行顺序为1234 --> 234 --> 234 直到2为false为止。

4.三、do...while循环

格式:

初始化表达式① 
do{ 
    循环体③ 
    布尔表达式④ 
}while(布尔表达式②);

执行顺序为134 --> 234 --> 234 直到2为false为止。

4.四、break和continue

break:跳出整个循环
continue:跳出当前循环

五、小小的算法题

5.一、输出200之内的素数

/**
 * @author RuiMing Lin
 * @date 2020-03-18 13:35
 */
public class Demo1 {
    public static void main(String[] args) {
        int count = 0;      // 定义一个计数器
        for (int i = 2; i <= 200; i++) {     // 对2到200之间的数进行遍历
            boolean flag = true;        // 设置素数的指示器
            for (int j = 2; j < i - 1; j++) {
                if (i % j == 0) {
                    flag = false;      // 若是不是素数则flag为false
                    break;
                }
            }
            if (flag) {        // 若是是素数则输出
                System.out.println(i);
                count++;
            }
        }
        System.out.println("共有" + count + "个素数");
    }
}

5.二、水仙花数

/**
 * @author RuiMing Lin
 * @date 2020-03-18 13:41
 */
public class Demo2 {
    public static void main(String[] args) {
        int count = 0;
        for (int i = 100; i <= 1000; i++) {
            int ge = i % 10;
            int shi = i / 10 % 10;
            int bai = i / 100 % 10;
            if (ge * ge * ge + shi * shi * shi + bai * bai * bai == i) {
                System.out.println("第" + ++count + "个水仙花数:" + i);
            }
        }
    }
}

有错误的地方敬请指出,欢迎你们评论区或者私信交流!每日持续更新Java、Python、大数据技术,请你们多多关注!

相关文章
相关标签/搜索