5.Java基本语法-----流程控制
2020-03-28 16:01:33来源:博客园 阅读 ()
5.Java基本语法-----流程控制
一、分类
顺序结构:程序从上而下依次执行
分支结构:if-else if-else、switch-case
循环结构:while循环、for循环、do-while循环、增强for循环
二、具体说明
1.分支结构
1.1if分支结构
说明
1.else结构是可选的;
2.if-else结构可以嵌套使用;
3.如果if-else结构后只有一条执行语句,则{}是可以省略的。但不建议省略,可读性差
代码1:
public class test { public static void main(String[] args) { int age = 18; if (age >= 18) { System.out.println("你已经成年了");//你已经成年了 } System.out.println("恭喜你");//恭喜你 } }
代码2:
public class test { public static void main(String[] args) { int age = 23; if (age >= 18) { System.out.println("你已经成年了");//你已经成年了 }else{ System.out.println("未成年了有很多限制"); } System.out.println("end");//end } }
代码3:
public class test { public static void main(String[] args) { int age = 30; if (age < 18) { System.out.println("未成年"); } else if (age < 30) { System.out.println("青壮年"); } else if (age < 50) { System.out.println("壮年");//壮年 }else{ System.out.println("老年"); } } }
1.2switch-case结构
说明:
① 根据switch表达式中的值,依次匹配各个case中的常量。一旦匹配成功,则进入相应case结构中,调用其执行语句。当调用完执行语句以后,则仍然继续向下执行其他case结构中的执行语句,直到遇到break关键字或此switch-case结构末尾结束为止。
② break,可以使用在switch-case结构中,表示一旦执行到此关键字,就跳出switch-case结构
③ switch结构中的表达式,只能是如下的6种数据类型之一:byte 、short、char、int、枚举类型(JDK5.0新增)、String类型(JDK7.0新增)
④ case 之后只能声明常量。不能声明范围。
⑤ break关键字是可选的。
⑥ default:相当于if-else结构中的else. default结构是可选的,而且位置是灵活的。
⑦ 如果switch-case结构中的多个case的执行语句相同,则可以考虑进行合并。
⑧ break在switch-case中是可选的
public class test { public static void main(String[] args) { String season = "summer"; switch (season){ case "spring": System.out.println("春暖花开"); break; case "summer": System.out.println("夏日炎炎");//夏日炎炎 break; case "autumn": System.out.println("秋高气爽"); break; case "winter": System.out.println("冰天雪地"); break; default: System.out.println("季节输入有误"); break; } } }
分支结构的使用场景:
对于确定的常量,不涉及到范围,优先考虑使用switch-case结构,因为执行效率稍高;
2.循环结构
循环结构的4要素:
①初始化条件;
②循环条件----boolean类型;
③循环体;
④迭代条件;
2.1for循环
说明:
①循环条件部分为boolean类型的表达式,一般当循环条件部分返回false时结束循环;
②初始化条件部分可以声明多个相同类型的变量;
③迭代部分也可以声明多个
代码:
public class test { public static void main(String[] args) { //遍历1-100之间的偶数,并打印其和 int sum = 0; for (int i = 1;i <= 100;i++){ if (i % 2 == 0) { System.out.println(i); sum += i; } } System.out.println(sum);//2550 } }
2.2while循环
说明:
①不要忘记迭代部分,不然会陷入死循环;
②while循环和for循环是可以相互转换的;
代码:
public class test { public static void main(String[] args) { //遍历1-100之间的奇数,并打印其和 int sum = 0; int i = 1; while (i <= 100) { if (i % 2 != 0) { System.out.println(i); sum += i; } i++; } System.out.println(sum);//2500 } }
2.3do-while循环
说明:
①do-while结构至少执行一次循环体;
②开发中,更多的使用的是while和for,do-while很少使用;
代码:
public class test { public static void main(String[] args) { //遍历1-100之间的奇数,并打印其和 int sum = 0; int i = 1; do { if (i % 2 != 0) { System.out.println(i); sum += i; } i++; }while (i <= 100); System.out.println(sum);//2500 } }
3.无限循环结构
while(true)或for(;;)
4.判断一个循环是否执行完毕?
①循环条件返回false;
②执行到break;
5.循环嵌套
记住一个点:外层循环控制行数,内层循环控制列数。
public class test { public static void main(String[] args) { //九九乘法表 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(); } } }
6.break关键字
可以使用在switch-case结构、循环结构中。表示结束当前循环,关键字后不能再声明执行语句。
代码:
public class test { public static void main(String[] args) { for (int i = 0;i < 10;i++){ if (i == 3) { break; } System.out.println("i = " + i); } System.out.println("游戏结束");//这条语句可以执行,因为已经出了for循环了 } }
带标签的break:
public class test { public static void main(String[] args) { label:for (int i = 0;i < 10;i++){ for (int j = 0;j < 10;j++){ if (j == 4) { break label; } System.out.println("i * j = " + (i * j)); } } System.out.println("游戏结束");//这条语句可以执行,因为已经出了for循环了 } }
7.continue关键字
使用在循环结构中,表示结束当次循环。关键字后不能声明执行语句。
代码:
public class test { public static void main(String[] args) { for (int i = 0;i < 100;i++){ if (i % 10 == 0) { continue; } System.out.println(i); } } }
作者:Java之美
日期:2020-03-28
原文链接:https://www.cnblogs.com/897463196-a/p/12585401.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:java 同步函数
下一篇:Java多线程-入门知识
- 04.Java基础语法 2020-06-11
- Java基础语法菜鸟教程笔记 2020-06-10
- java基本数据类型 2020-06-06
- java实现分页查询 2020-06-05
- (易忘篇)java基本语法难点2 2020-06-03
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash