Day6 三种结构 顺序选择循环!
2021/7/8 23:27:40
本文主要是介绍Day6 三种结构 顺序选择循环!,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
顺序结构
从上到下依次执行,它是任何算法都离不开的一种基本算法结构。
package com.xiaoming.struct; public class ShunXuDemo { public static void main(String[] args) { System.out.println("hello1"); System.out.println("hello2"); System.out.println("hello3"); System.out.println("hello4"); System.out.println("hello5"); } }
选择结构
if单选择结构
判断一个东西是否可行,用if语句来表示。
语句:
if(布尔表达式){
//如果布尔表达式为true将执行的语句
}
package com.xiaoming.struct; import java.util.Scanner; public class IfDemo01 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入内容:"); String s = scanner.nextLine(); // equals:判断字符串是否相等 if (s.equals("Hello")){ System.out.println(s); } System.out.println("End"); scanner.close(); } }
if双选择结构
语句:
if(布尔表达式){
//如果布尔表达式的值为true
}else{
//如果布尔表达式的值为true
}
package com.xiaoming.struct; import java.util.Scanner; public class IfDemo02 { public static void main(String[] args) { //考试分数大于60及格,小于60不及格。 Scanner scanner = new Scanner(System.in); System.out.println("请输入成绩:"); int score = scanner.nextInt(); if (score>=60){ System.out.println("及格"); }else{ System.out.println("不及格"); } scanner.close(); } }
if多选择结构
if(布尔表达式1){
//如果布尔表达式1的值为true执行代码
}else if{布尔表达式2){
//如果布尔表达式2的值为true执行代码
}else if(布尔表达式3){
//如果布尔表达式3的值为true执行代码
}else {
//如果以上布尔表达式都不为true执行代码
}
package com.xiaoming.struct; import java.util.Scanner; public class IfDemo03<score> { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); /* if 语句至多有一个else语句,else语句在所有else if 语句之后。 if 语句可以有若干个else if 语句,它们必须在else语句之前。 一旦其中一个else if 语句检测为true,其他的else if 以及else 语句都将跳过执行 */ System.out.println("请输入成绩:"); int score = scanner.nextInt(); if (score == 100) { System.out.println("恭喜满分"); } else if (score< 100 && score >= 90){ System.out.println("A级"); } else if (score<90 && score >=80){ System.out.println("B级"); }else if (score<80 && score >=70){ System.out.println("C级"); }else if (score<70 && score >=60){ System.out.println("D级"); }else if (score<60 && score >=0){ System.out.println("不及格"); }else { System.out.println("成绩不合法"); } scanner.close(); } }
嵌套的if语句
语句:
if(布尔表达式1){
///如果布尔表达式1的值为true执行代码
if(布尔表达式2){
///如果布尔表达式2的值为true执行代码
}
}
Switch多选择结构
多选择还有一个实现方式就是switch case语句。
switch case 语句判断判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。
语句:
switch(expression){ case value: //语句 break;//可选 case value: //语句 break;//可选 //你可以有任意数量的case语句 default : //可选 //语句 }
Switch中的变量类型可以是:
-
byte short int char String(Java SE7开始)
-
case标签必须为字符串常量或字面量
package com.xiaoming.struct; public class SwitchDemo01 { public static void main(String[] args) { //case 穿透 //switch:匹配一个具体值 char grade = 'C'; switch(grade){ case 'A': System.out.println("优秀"); break; //可选 case 'B': System.out.println("良好"); break; //可选 case 'C': System.out.println("及格"); break; //可选 case 'D': System.out.println("再接再厉"); break; //可选 case 'E': System.out.println("挂科"); break; //可选 default: System.out.println("未知等级"); } } }
注意:case穿透现象:
如果不加break case回一直执行下去输出全部结果 这就是case穿透现象。
所以每用一个case语句要同时加上break
package com.xiaoming.struct; public class SwitchDemo02 { public static void main(String[] args) { String name = "xiaoming"; // JDK7新特性,表达式结果可以是字符串!!! // 字符串的本质还是数字 //反编译 jva---class (字节码文件)------反编译(Idea) switch (name){ case"xiaoming": System.out.println("xiaoming"); break; case"Java": System.out.println("Java"); break; default: System.out.println("弄啥嘞!"); } } }
通过将.class文件拖到.java里反编译发现 switch输入字符串变量是是利用比较哈希值相不相同
循环结构
-
while循环
-
do ...while 循环
-
for循环
-
在java5中还引入了一种主要用于数组的增强型for循环。
while循环:
while(布尔表达式){
//循环内容
}
-
只要布尔表达式为true,循环就会一直执行下去。
-
我们大多数情况下是会让循环停止下来,我们需要一个让表达式失效的方式来结束循环。
-
少部分情况需要循环一直执行下去,比如服务器的请求响应监听等。
-
循环条件一直为true就会造成无限循环[死循环],我们正常的业务编程中应该尽量避免死循环。会影响程序性能或者造成程序卡死崩溃!
-
思考:计算1+2+3+...+100=?
package com.xiaoming.struct; public class WhileDemo01 { public static void main(String[] args) { //输出1~100 int i = 0; while(i<100){ i++; System.out.println(i); } } }
package com.xiaoming.struct; public class WhileDemo02 { public static void main(String[] args) { //死循环 while(true){ // 等待客户端链接 // 定时检查 //........... } } }
1+2+3+...+100=?
package com.xiaoming.struct; public class WhileDemo03 { public static void main(String[] args) { //计算1+2+3+...+100=? //高斯的故事 int i = 0; int sum = 0; while (i<=100){ sum = sum + i; i++; } System.out.println(sum); } }
do while 循环:
-
对于while语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次。
-
do...while 循环和while循环相似,不同的是,do...while循环至少会执行一次。
do{
//代码语句
}while(布尔表达式);
while和do while的区别:
while先判断后执行。do while 先执行后判断
do...while总是保证循环体至少被执行一次!这是主要差别
package com.xiaoming.struct; public class DoWhileDemo01 { public static void main(String[] args) { int i = 0; int sum = 0; do { sum =sum + i; i++; }while (i<=100); System.out.println(sum); } }
package com.xiaoming.struct; public class DoWhileDemo02 { public static void main(String[] args) { int a = 0; while(a<0){ System.out.println(a); a++; } System.out.println("========================================"); do{ System.out.println(a); a++; }while(a<0); //0 先执行后判断; } }
For循环:
-
这篇关于Day6 三种结构 顺序选择循环!的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南