各种结构(顺序、if、switch、while、do while)
2022/4/12 23:42:45
本文主要是介绍各种结构(顺序、if、switch、while、do while),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
各种结构
1.顺序结构
package com.kuang.struct; public class ShunXuDemo { public static void main(String[] args) { System.out.println("hello01"); System.out.println("hello02"); System.out.println("hello03"); System.out.println("hello04"); System.out.println("hello05"); } }
运行结果为
2.if单选择结构
语法
if(布尔表达式){ //如果布尔表达式为ture将执行语句 }
package com.kuang.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(); //equal:判断字符串是否相等 if (s.equals("Hello")) { System.out.println(s); } System.out.println("End"); scanner.close(); } }
运行结果为
3.if双选择结构
语法结构
if(布尔值表达式){ //如果布尔表达式的值为true }else //如果布尔表达式的值为false }
package com.kuang.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(); } }
运行结果
4.if多选择结构
语法结构
if(布尔表达式1){ //如果布尔表达式1的值为true执行代码 }else if(布尔表达式2){ //如果布尔表达式2的值为true执行代码 }else if(布尔表达式3){ //如果布尔表达式3的值为true执行代码 }else{ //如果以上布尔表达式都不为true执行代码 }
package com.kuang.struct; import java.util.Scanner; public class IfDemo03 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); 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语句至多有1个else语句。else语句在所有的else if之后
if语句可以有若干个else if语句,它们必须在else语句之前
一旦其中一个else if语句检测为ture,其他的else if以及else语句都将跳过执行
5.嵌套的if结构
语法结构
if(布尔表达式1){ //如果布尔表达式1的值为true就执行代码 if(布尔表达式2){ //如果布尔表达式2的值为true就执行代码 } }
思考:我们需要寻找一个数,在1-100之间?
6.switch多选择结构
语法结构
switch(expression){ case value: //语句 break;//可选 case value: //语句 break;//可选 //你可以任意选择数量的case语句 default://可选 //语句 }
注:break很重要,必须要写,不然会引起case穿透
package com.kuang.struct; public class SwitchDemo02 { public static void main(String[] args) { //JDK7的新特性,表达结果可以是字符串 String name = "秦疆"; switch (name) { case "秦疆": System.out.println("秦疆"); break; case "狂神": System.out.println("狂神"); break; default: System.out.println("弄啥嘞"); } } }
运行结果
拓展
反编译器(IDEA)
首先打开文件中项目结构,复制class路径,去此电脑打开路径并找到想要反编译的class
返回IDEA,右击struct,找到show in project,找到该java文件。
把刚才此电脑的class文件拖到现在的java文件里,项目目录便可以看到,双击即可看到反编译。
初学一定要养成看源码的好习惯
6.while循环
语法结构
while(布尔表达式){ //循环内容 }
特点:
只要布尔表达式为ture,循环就会一直执行下去
我们大多数情况是会让循环停止下来的,我们需要让一个表达式失效的方式来结束循环
少部分循环需要程序一直执行,比如服务器的请求响应监听等
循环条件一直为true就会造成死循环,我们正常的业务中应当避免这种,会影响程序性能或者造成程序卡死崩溃
package com.kuang.struct; public class WhileDemo01 { public static void main(String[] args) { //输入1~100 int i = 0; while (i < 100) { i++; System.out.println(i); } } }
运行结果
思考题:计算1+2+3+4+....+100=?
package com.kuang.struct; public class WhileDemo03 { public static void main(String[] args) { //计算1+2+3+4+....+100=? int i = 0; int sum = 0; while (i <= 100) { sum = sum + i; i++; } System.out.println(sum); } }
运行结果为
7.dowhile循环
语法结构
do{ //代码语句 }whlie(布尔表达式);
特点:先执行后判断
即使不满足条件,至少要也能执行一次
package com.kuang.struct; public class DoWhileDmo01 { public static void main(String[] args) { int i = 0; while (i < 0) { System.out.println(i); } System.out.println("=========================="); do { System.out.println(i); i++; } while (i < 0); } }
运行结果
这里可以看到while和dowhile的区别,while先判断,后执行,这里i=0,不小于0,所以程序跳过它执行下一步
这篇关于各种结构(顺序、if、switch、while、do while)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26MATLAB 中 A(7)=[];什么意思?-icode9专业技术文章分享
- 2024-11-26UniApp 中如何实现使用输入法时保持页面列表不动的效果?-icode9专业技术文章分享
- 2024-11-26在 UniApp 中怎么实现输入法弹出时禁止页面向上滚动?-icode9专业技术文章分享
- 2024-11-26WebSocket是什么,怎么使用?-icode9专业技术文章分享
- 2024-11-26页面有多个ref 要动态传入怎么实现?-icode9专业技术文章分享
- 2024-11-26在 UniApp 中实现一个底部输入框的常见方法有哪些?-icode9专业技术文章分享
- 2024-11-26RocketMQ入门指南:搭建与使用全流程详解
- 2024-11-26RocketMQ入门教程:轻松搭建与使用指南
- 2024-11-26手写RocketMQ:从入门到实践的简单教程
- 2024-11-25【机器学习(二)】分类和回归任务-决策树(Decision Tree,DT)算法-Sentosa_DSML社区版