Java基础语法(4)-流程控制

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

Java基础语法(4)-流程控制

BenCoper   2020-03-30 我要评论
> title: **Java基础语法(4)-流程控制** > > blog: [CSDN](https://blog.csdn.net/BenCoper) > > data: [Java学习路线及视频](https://www.cnblogs.com/bencoper/p/12558477.html) ### 1.程序流程控制 - 流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块。 - 三种基本流程结构 - 顺序结构---程序从上到下逐行地执行,中间没有任何判断和跳转 - 分支结构---根据条件,选择性地执行某段代码。有if…else和switch-case两种分支语句 - 循环结构---根据循环条件,重复性的执行某段代码。有while、do…while、for、foreach三种循环语句。 ### 2.顺序结构 - Java中定义成员变量时采用合法的前向引用 ```java //正确形式 public class Test{ int num1 = 12; int num2 = num1 + 2; } //错误形式 public class Test{ int num2 = num1 + 2; int num1 = 12; } ``` ### 3.分支语句1: if-else ```java if(条件表达式){ 执行代码块; } ``` ```java if(条件表达式){ 执行代码块1; } else{ 执行代码块2; } ``` ```java if(条件表达式1){ 执行代码块1; } else if (条件表达式2){ 执行代码块2; } …… else{ 执行代码块n; } ``` - 分支结构:if-else使用说明 - 条件表达式必须是布尔表达式(关系表达式或逻辑表达式)、布尔变量 - 语句块只有一条执行语句时,一对{}可以省略,但建议保留 - if-else语句结构,根据需要可以嵌套使用 - 当if-else结构是“多选一”时,最后的else是可选的,根据需要可以省略 - 当多个条件是“互斥”关系时,条件判断语句及执行语句间顺序无所谓 - 当多个条件是“包含”关系时,“小上大下 / 子上父下” - if-else语句应用举例 ```java public class AgeTest{ public static void main(String args[]){ int age = 15; if (age< 0) { System.out.println("不可能!"); } else if (age>250) { System.out.println("是个妖怪!"); } else { System.out.println(“人家芳龄 " + age +" ,马马乎乎啦!"); } } } ``` ### 4.分支语句2: switch-case ```java switch(表达式){ case 常量1: 语句1; // break; case 常量2: 语句2; // break; … … case 常量N: 语句N; // break; default: 语句; // break; } ``` - switch-case语句应用举例 ```java public class SwitchTest { public static void main(String args[]) { int i = 1; switch (i) { case 0: System.out.println("zero"); break; case 1: System.out.println("one"); break; default: System.out.println("default"); break; } } } ``` - switch-case语句有关规则 - switch(表达式)中表达式的值**必须**是下述几种类型之一:**byte,short,char,int,枚举 (jdk 5.0),String (jdk 7.0);** - case子句中的值必须是**常量**,不能是变量名或不确定的表达式值; - 同一个switch语句,所有case子句中的常量值互不相同; - break语句用来在执行完一个case分支后使程序跳出switch语句块;如果没有break,程序会顺序执行到switch结尾 - default子句是**可任选的**。同时,位置也是灵活的。当没有匹配的case时,执行default ### 5.switch和if语句的对比 - 如果判断的具体数值不多,而且符合byte、short 、char、int、String、枚举等几种类型。虽然两个语句都可以使用,建议使用swtich语句。因为效率稍高。 - 其他情况:对区间判断,对结果为boolean类型判断,使用if,if的使用范围更广。也就是说,使用switch-case的,都可以改写为if-else。反之不成立。 ### 6.循环结构 - 在某些条件满足的情况下,反复执行特定代码的功能 - for 循环 - while 循环 - do-while 循环 - 循环语句的四个组成部分 - 初始化部分(init_statement) - 循环条件部分(test_exp) - 循环体部分(body_statement) - 迭代部分(alter_statement) ### 7.循环结构1:for循环 - 语法格式 ```java for (1.初始化部分;2.循环条件部分;3.迭代部分){ 4.循环体部分; } ``` - 执行过程 - ①-②-③-④-②-③-④-②-③-④-.....-② - 说明 - ②循环条件部分为boolean类型表达式,当值为false时,退出循环 - ①初始化部分可以声明多个变量,但必须是同一个类型,用逗号分隔 - ④可以有多个变量更新,用逗号分隔 - 演示 - 应用举例 ```java public class ForLoop { public static void main(String args[]) { int result = 0; for (int i = 1; i <= 100; i++) { result += i; } System.out.println("result=" + result); } } ``` ### 8.循环结构1:while循环 - 语法格式 ``` ①初始化部分 while(②循环条件部分){ ③循环体部分; ④迭代部分; } ``` - 执行过程 ①-②-③-④-②-③-④-②-③-④-...-② - 说明 - 注意不要忘记声明④迭代部分。否则,循环将不能结束,变成死循环 - for循环和while循环可以相互转换 - 应用举例 ```java public class WhileLoop { public static void main(String args[]) { int result = 0; int i = 1; while (i <= 100) { result += i; i++; } System.out.println("result=" + result); } } ``` ### 9.循环结构1:do-while循环 - 语法格式 ```java ①初始化部分 do{ ③循环体部分; ④迭代部分; }while(②循环条件部分); ``` - 执行过程 ①-**③-④**-②-③-④-②-③-④-...-② - 说明 - do-while循环至少执行一次循环体 - 应用举例 ```java public class DoWhileLoop { public static void main(String args[]) { int result = 0, i = 1; do { result += i; i++; } while (i <= 100); System.out.println("result=" + result); } } ``` ### 10.结语 2020-3-27: [Java基础语法(2)-变量](https://www.cnblogs.com/bencoper/p/12582085.html) 2020-3-27: [Java基础语法(3)-运算符](https://www.cnblogs.com/bencoper/p/12584019.html) - 今日好文推荐 - [字节跳动的技术架构](https://blog.csdn.net/Ture010Love/articlehttps://img.qb5200.com/download-x/details/104272717?depth_1-utm_source=distribute.pc_feed.none-task&request_id=&utm_source=distribute.pc_feed.none-task) - [在三线城市工作爽吗?](https://blog.csdn.net/qing_gee/articlehttps://img.qb5200.com/download-x/details/104323806) - 今日资料推荐 - [我的Java自学之路](https://how2j.cn?p=60346) - [springboot纯前后端分离仓储管理系统](https://ke.qq.com/course/481905?saleToken=2027593&from=pclink)

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们