Java基础语法之控制流程
2020-03-05 16:02:19来源:博客园 阅读 ()
Java基础语法之控制流程
Java基础语法之控制流程
语言的流程控制提供了对程序步骤的基本方法。
三大流程控制语句:顺序、选择、循环
复合结构
复合结构是以一个区块为单位的,由"{"开始"}"结束。复合语句会为局部变量创建一个作用域,该作用域会成为程序的一部分。在这个作用域中变量能够被创建使用,如果这个变量在这个作用域外使用,会发生程序错误。复合结构内可以嵌套多个复合结构。
判断结构
判断结构会根据不同的条件结果执行不同的代码块。
If结构
if结构中的条件结构是一个布尔值,在条件满足也就是true时执行大括号中的代码块,如果条件不满足就是结果为false时则不执行大括号中的代码块,直接执行if结构后的代码。
在if结构中的代码量很少的情况我们可以省略大括号。不是很建议使用,这样容易连你自己都分不清楚是不是if结构中的语句更别说其他程序员的后期维护。
If-else结构
if-else结构同理如果条件满足执行1,否则执行代码块2。
Demo
我们可以尝试编写一个小程序。
根据相应的考试成绩输出响应的评价,成绩大于等于90分输出优,大于等于80且小于等于90输出良,大于等于60且小于80输出中,小于60则输出不及格。
看到题目可能会疑惑,不管是if结构或者if-else结构都需要繁琐并且代码量很大才能完成。接下来看看代码:
其中的Scanner input = new Scanner(Systrm.in);是什么呢,他是一个输入语句他的名字是input,只需要记住,我后面的文章会详细讲解。
这段代码的执行过程是:
????开始提示输入成绩,然后他会更具你输入的成绩进行判断,只能输入double类型的数据。
这也不是if结构或者if-else结构啊,慢慢往下看!
多重if
当我们要同时判断多个条件是就需要这个多重if-else结构了。
嵌套if
顾名思义嵌套if结构就是将if结构套在if结构里面。
Demo
上面的那个小Demo也可以用嵌套if结构完成。
会很复杂,代码量也会相对程度的加大一点。
所以针对不同的问题选择不同的解决方案很重要。
switch结构
switch结构是一种多选一的选择结构。简单说一下switch是什么样的执行模式:
先计算switch表达式的值,如果值与case后面的常量表达式相同,就执行case后面的语句直到遇到break语句,否则继续执行下一个case中的语句一直到有break语句。
要是没有常量表达式与表达式的值相同,那么直接执行default语句后面的语句然后结束结构执行结构之后的语句。
没有default语句并且没有常量表达式与表达式的值相同时switch结构不会做任何处理直接执行结构之后的代码。
循环结构
循环结构的循环方式是用一个条件来判断是否反复的执行循环结构中的语句。
while循环
根据循环条件判断是否继续执行语句。
Demo
这是一个简单的1~10相加的循环。
首先判断sum是否小于等于10,满足条件则执行while结构的代码块。
num+=sum;è
num = num + sum;è
num = 0 + 1;è
sum+1;è
0 + 1 = 1=sum;
然后再次进行判断sum是否小于等于10,满足条件继续执行while结构中的代码块,直到sum不满足条件结构结束执行输出语句。
那么如果条件一直满足,那就会进入死循环,一直循环执行while结构中的代码块,直到关闭程序。死循环是个很严重的问题,在真正的开发中这种循环会让你的电脑死机可能你好几天的劳作就会化为灰烬!
do-while循环
do-while结构和while结构的区别:
????while结构:先判断在执行
????do-while结构:先执行在判断
也就是说do-while结构不管条件满不满足先执行一遍其中的代码块,然后再判断是否继续执行下一次循环。
for循环
for结构是最常用的循环结构,用来重复执行其中的代码块。
表达式1是初始化表达式用于完成变量的初始化,表达式2用于控制循环条件,表达式3是循环操作后表达式可以改变循环条件。
Demo
1~10求和其实用for循环更方便。
会长时间不间断跟新我所学到的知识。
错误希望指正。
我们会变得更好,加油!
我们评论区里见!
原文链接:https://www.cnblogs.com/auditoryfeather/p/12420125.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 国外程序员整理的Java资源大全(全部是干货) 2020-06-12
- 2020年深圳中国平安各部门Java中级面试真题合集(附答案) 2020-06-11
- 2020年java就业前景 2020-06-11
- 04.Java基础语法 2020-06-11
- Java--反射(框架设计的灵魂)案例 2020-06-11
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