Java流程控制语句有哪些举例详解
目录
- 流程控制语句
- 顺序控制
- 分支控制
- 循环控制
- 经典循环案例
- break和continue
- 键盘输入
- 随机数生成
- 总结
流程控制语句
顺序控制
从左边往右边去执行,从上面往下面逐行的去执行程序,不能先使用,在声明
//正确的顺序 int i = 10; System.out.println(i); //错误的顺序 System.out.println(i); int i = 20;
分支控制
- 单分支
- if(条件表达式){当条件表达式为true的时候才会执行的代码}
int i = 10; if(i == 10){ System.out.println("i等于10");}//输出i等于10
- 双分支
- 为了使程序有多条路可以执行,所以就有了双分支if(条件表达式){当条件表达式为true的时候才会执行的代码}else{当条件表达式为false的时候才会执行的代码}
int i = 20; if(i == 10){ System.out.println("i等于10");}else{ System.out.println("i不等于10"); }//输出i等于10
- 多分支
- 为了使程序有多条路可以执行,所以就有了多分支if(条件表达式1){当条件表达式1为true的时候才会执行的代码} else if(条件表达式2){当条件表达式2为true的时候才会执行的代码}else{当条件表达式1和条件表达式2都为false的时候才会执行的代码}注意:多分支中,只要有一个条件表达式为true,那么后面的条件表达式就不会执行了
int i = 50; if(i == 10){ System.out.println("i等于10");}else if(i == 20){ System.out.println("i等于20");}else{ System.out.println("i不等于10也不等于20");`}//输出i不等于10也ozEbqjKFJo不等于20
- 嵌套分支在一个分支的内部又完整的嵌套了一个分支
int i = 50; if(i > 10){ if(i > 20){ }else{ } }else{ }else{ }
- 选择语句
- switch case语句,是一种多分支语句,可以用来代替多个if else语句注意:1.表达式的数据类型,应该是byte,short,int,char,enum(枚举),String(字符串)2.case子句中的值必须是常量,而不能是变量名或不确定的表达式值3.同一个switch语句,所有case子句中的常量值互不相同4.break语句用来在执行完一个case分支后使程序跳出switch语句块;如果没有break,程序会顺序执行到switch结尾5.default子句是可任选的。同时,位置也是灵活的。当没有匹配的case时,执行default语法:switch(表达式){case 常量1:当表达式的值等于常量1的时候才会执行的代码break;}
int i = 10; switch(i){ case 10: System.out.println("i等于10"); break; case 20: System.out.println("i等于20");}
循环控制
四要素:循环初始化 循环条件 循环变量迭代 循环体(要循环的语句)
- for循环语法:for(循环变量初始化;循环条件;循环变量迭代){循环的语句}
for(int i = 1;i <= 10;i++){ System.out.println("i等于" + i); }
- while循环语法:循环变量初始化;while(循环条件){循环体;循环变量迭代;}
int i = 1; while(i <= 10){ System.out.println("i等于" + i); i++;//记得迭代,否则会死循环 }
- do…while循环
- 语法:循环变量初始化;do{ 循环体;建议更新i值,否则会死循环}while(循环条件);do…while循环和while循环的区别:do…while循环至少会执行一次循环体,而while循环不一定会执行循环体
int i = 1; do{ System.out.println("i等于" + i); i++;}//记得更新值,否则会死循环 while(i <= 10);
经典循环案例
- 打印99乘法表
for(int i = 1;i <= 9;i++){ for(int j = 1;j <= i;j++){ System.out.print(j + "*" + i + "=" + (j * i) + "\t"); } System.out.println(); }
- 打印100以内的质数
for(int i = 2;i <= 100;i++){ boolean isPrime = true; for(int j = 2;j < i;j++){ if(i % j == 0){ isPrime = false; break;} } if(isPrime){ System.out.println(i); }
- 打印1000以内的水仙花数
for(int i = 10http://www.devze.com0;i <= 999;i++)javascript{ int ge = i % 10; int shi = i / 10 % 10; int bai = i / 100; if(i == ge * ge * ge + shi * shi * shi + bai * bai * bai){ System.out.println(i);} }
- 打印菱形
for (int i = 1; i <= 5; i++) { //上半部分 for (int j = 1; j <= 10 - 2 * i; j++) { System.out.print(" "); } for (int k = 1; k <= 2 * i - 1; k++) { System.out.print("* "); } System.out.println(); } for(int i=1;iozEbqjKFJo<=4;i++){ //下半部分 for(int j=1;j<=2*i;j++){ System.out.print(" "); } for(int k=1;k<=10-2*i-1;k++){ System.out.print("* "); } System.out.println(); }
break和continue
- break语句用于终止某个语句块的执行,即跳过循环体中剩余的语句。
- continue语句用于跳过循环体中剩余的语句而强制执行下一次循环。
- break语句可以用于以下语句:
- for循环
- while循环
- do…while循环
- switch语句
- continue语句可以用于以下语句:
- for循环
- while循环
- do…while循环
键盘输入
- 步骤:
导包:import Java.util.Scanner;
创建对象:Scanner sc = new Scanner(System.in);
接收数据:int num = sc.nextInt();- nextInt()方法用于接收一个整数
- next()方法用于接收一个字符串
- nextDouble()方法用于接收一个双精度浮点数
- nextFloat()方法用于接收一个单精度浮点数
- nextBoolean()方法用于接收一个布尔值
- nextByte()方法用于接收一个字节
- nextShort()方法用于接收一个短整数
- nextLong()方法用于接收一个长整数
- next().charAt(0)方法用于接收一个字符
关闭资源:sc.close();
import java.util.Scanner; public class ScannerDemo { public static void main(String[] args) { Scanner sc = new Scanner(System.in);javascript System.out.println("请输入一个整数:"); int num = sc.nextInt(); System.out.println("您输入的整数是:" + num); sc.close(); } }
随机数生成
- Math.random()方法用于生成一个0到1之间的随机数
- 如何获取 [a,b] 范围内的随机整数呢?(int)(Math.random() * (b - a + 1)) + a
总结
到此这篇关于Java流程控制语句有哪些的文章就介绍到这了,更多相关Java流程控制语句内容请搜索编程客栈(www.devze.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!
精彩评论