Java的控制流程用于使程序按正确的顺序逐步进行,为程序提供了运行方向。分为选择类控制流程和循环类控制流程。
if-else流程是最基本的选择类控制流程。格式为:if (expr) statement1; [else statement2;]。expr是逻辑表达式,如果为true,则执行statement1;如果为false则不执行,如果有else子句,则执行statement2。
默认情况下else子句会与最近的if子句配对,可以使用“{ }”来表示else子句与哪一个if子句匹配。
if-else流程有两种嵌套:
1.if (expr1) statement1; else if (expr2) statement2; else statement3;
2.if (expr1) { if (expr2) statement1; else statement2;} else statement3;
switch流程适用于多种选择的情况。格式为:switch (expr) { case val1 : statement1; case val2 : statement2;[default : statement3;]}
switch根据表达式expr的值选择对应的case块,如果没有一个case块与之匹配且有default块,则进入default块。
switch中case块或default块需要用break语句来退出程序,如果该程序块是switch的最后一个块则不用break语句。
default块可以放在任何位置,并不一定是在最后,但通常情况下default块都放在最后。
switch有一个特点:在一个case块中声明的变量只能在该case块中使用,但是在其他case块不能声明同名变量。
循环类控制流程的作用是,由循环初始、循环迭代、循环结束三部分控制,重复执行循环体。
for流程的格式为:for (初始; 结束; 迭代) { 循环体 }
初始部分和迭代部分可以用“,”隔开多个部分,而结束部分是一个逻辑表达式,用于判断结束循环的时机。
可以在初始部分中声明变量,该变量只能在当前for流程中使用。
foreach流程是一种增强的for流程,适用于数组或Collection类对象的遍历。格式为:for (type item : items) { 循环体 }
items是数组或Collection类对象,而item代表items的元素,所以item的类型type为items中的元素类型。
while流程的格式为:初始; while (结束) { 循环体; 迭代;}
进入while流程时会先进行一次结束判断,为true才进入循环。
do-while流程的格式为:初始; do { 循环体; 迭代;} while (结束);
进入do-while流程时会先进行一次循环,再进行结束判断。
可以使用break和continue语句来退出流程。
break语句是退出整个循环流程;continue语句是退出当前循环,进入下一次循环。
原文:https://www.cnblogs.com/lqkStudy/p/10987961.html