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
首先判断关系表达式看其结果是true仍是false,若是是true就执行语句体 ,若是是false就不执行语句体 。3d
首先判断关系表达式看其结果是true仍是false,若是是true就执行语句体1,若是是false就执行语句体2。code
首先判断关系表达式1,看其结果是true仍是false。若是是true就执行语句体1,若是是false就继续判断关系表达式2,看其结果是true仍是false。若是是true就执行语句体2,若是是false就继续判断关系表达式,看其结果是true仍是false …若是没有任何关系表达式为true,就执行语句体n+1。blog
三元运算符格式:(表达式) : 表达式为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; }
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...循环
格式:
for(初始化表达式①; 布尔表达式②; 步进表达式④){ 循环体③ }
执行顺序为1234 --> 234 --> 234 直到2为false为止。
格式:
初始化表达式① while(布尔表达式②){ 循环体③ 布尔表达式④ }
执行顺序为1234 --> 234 --> 234 直到2为false为止。
格式:
初始化表达式① do{ 循环体③ 布尔表达式④ }while(布尔表达式②);
执行顺序为134 --> 234 --> 234 直到2为false为止。
break:跳出整个循环
continue:跳出当前循环
/** * @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 + "个素数"); } }
/** * @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、大数据技术,请你们多多关注!