流程控制—顺序、循环、判断
顺序结构
顺序结构是任何一个算法都离不开的一种基本算法结构(从上到下一步一步计算下来)
选择结构
if单选择结构
if (布尔表达式){
//如果布尔表达值为ture将执行的语句
}
if (str.equals("Hello")){ //str为用户输入的字符串,equals是判断字符串是否一致使用的语句。
System.out.println(str);
}
System.out.println("End");
}
if 双选择结构
if (布尔表达式){
//如果布尔表达值为ture将执行的语句
}else{
////如果布尔表达值为false将执行的语句
}
if (score>=60){ //score是考试成绩
System.out.println("及格");
}else {
System.out.println("不及格");
}
if多选择结构
if (布尔表达式 1){
//如果布尔表达式 1值为ture将执行代码
}else if(布尔表达式 2){
//如果布尔表达式 2值为ture将执行代码
}else if(布尔表达式 3){
//如果布尔表达式 3值为ture将执行代码
}else {
//如果以上布尔表达式 都不为ture将执行代码
}
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("成绩不合法");
}
嵌套的if选择结构
if (布尔表达式 1){
//如果布尔表达式 1值为ture将执行代码
if (布尔表达式 2){
//如果布尔表达式 2值为ture将执行代码
}
}
switch多选择结构
switch 语句中的变量类型可以是:
- byte 、short、int、或者char。
- java SE 7开始支持字符串String类型同时case标签必须为字符串常量或字面量。
语法格式:
switch (expression){
case value:
//语句
break; //可选,加 break防止case穿透 。不加会在相应值处开始一条一条向下全部执行。
case value:
//语句
break; //可选
// 你可以有很多个case语句
default: //可选
//语句
}
循环结构
while循环
while(布尔表达式){
//循环类容
}
- 只要布尔表达式为ture,循环就会一直执行 如果没有使表达式失效的方式就形成死循环,避免死循环
- 大多时候我们需要让循环停下来,需要一个让表达式失效的方式
do....while循环
对于while循环,如果不能满足条件就不循环,有的时候我们需要即使不满足条件也至少循环一次。
- do......while 循环至少执行一次
do {
//代码语句
}while(布尔表达式);
while与do...while区别
while条件不满足就不会做循环。(先判断后循环)
do...while至少执行一次再循环。(先循环在判断)
public class DoWhileDemo02 {
public static void main(String[] args) {
int i=0;
while (i<0){ //while循环最终没有成功循环因为布尔表达式不成立。
System.out.println(i);
i++;
}
System.out.println("=======================");
do { //do....while运行了一次。
System.out.println(i);
i++;
}while (i<0);
}
}
for循环
语法格式:
for(初始化;布尔表达式;更新){
//代码语句
}
- for循环使循环更简单
- for循环是支持迭代的通用结构,最有效最灵活的循环结构
- for循环执行的次数是在执行前就确定的
//初始化//条件判断//迭代
for (int i=1;i<=100;i++){
System.out.println(i);
}
System.out.println("for循环结束!");
快捷键: ( 100.for +回车) 就自动生成for循环了
*** 关于for语句的说明***
-
最先执行初始化步骤。可以声明一种类型,但可以初始化一个或多个循环控制变量,也可以是空语句
-
然后,检查布尔表达式的值是否为Ture,是就执行循环体,如果为Flase循环终止;开始执行循环体下面的指令
-
执行一次循环后,更新循环控制变量(迭代因子控制循环变量的增减)
-
再次检查布尔值循环1---3的步骤;
-
for 死循环语句: for( ; ; ){ //语句 }
*案例:循环输出1---1000之间能被5整除的数,并且每输出三个数换行;
public class ForDemo02 {
public static void main(String[] args) {
//用for或者while循环输出1---1000之间能被5整除的数,并且每输出三个数换行;
for (int i = 0; i <= 1000; i++) {
if (i%(5*3)==0){
// System.out.println();//换行表达方式一
System.out.print("\n");//换行表达方式二
}
if (i%5==0){
System.out.print(i+"\t");//输出i后自动空一格TAB距离
}
}
}
// println 输出完会换行
// print 输出完不换行
}
增强for循环
主要用于数组或集合的增强型for循环。
语句格式:
for (声明语句 : 表达式){
//代码句子
}
- 声明语句:声明新的局部变量,该变量的类型和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。
- 表达式:表达式是要访问的数组名,或者是返回值为数组的方法。

浙公网安备 33010602011771号