《疯狂Java讲义(第3版)》.(李刚)——流程控制

1、流程控制

1)顺序结构
没有任何流程控制,自上而下依次执行。
2)分支结构
[1]if条件语句
三种形式:

if(条件){
    //流程
}
if(条件){
    //流程
}else{
    //流程
}
if(条件){
    //流程
}else if(条件){
    //流程
}
...//这里可以接多个else if
else//最后这个else可以省略
{
    //流程
}

例子:

int a = 5;
if(a > 4){
    system.out.println("a大于4!");
}else if(a < 4){
    system.out.println("a小于4!");
}else{
    system.out.println("a等于4!");
}

[2]增强后的switch
switch语句由一个控制表达式和多个case标签组成,和if不同的是switch后边跟的不是boolean类型,而是byte、short、char、int四种数字类型,枚举型和String类型(从jdk1.7版本才可以)。

package com.alex.demo02;

/** * Description * <br>网站:<a href= "http://blog.csdn.net/qq_32347977">Alex的博客</a> * <br>This is a demo of switch * <br> * <br> * <br> * @author Alex * @version 1.0 */
public class SwitchTest {

    /** * 主方法,程序的入口 * @param args */
    public static void main(String[] args) {
        String season = "春天";
        switch(season){
        case "春天":
            System.out.println("春暖花开!");
            break;

        case "夏天":
            System.out.println("夏日炎炎!");
            break;

        case "秋天":
            System.out.println("秋高气爽!");
            break;

        case "冬天":
            System.out.println("冬雪皑皑!");
            break;

        default:
            System.out.println("季节输入错误");
        }
    }
}

注意:switch条件是byte、short、char、int四种数字类型,枚举型和String类型(从jdk1.7版本才可以),而每一个case后必须跟一个break,否则会继续执行。

3)循环结构
[1]while

while(条件){
    //流程
}

当条件为真时,流程会一直执行,知道条件为假的时候跳出循环。

package com.alex.demo02;


/** * Description * <br>网站:<a href= "http://blog.csdn.net/qq_32347977">Alex的博客</a> * <br>This is a demo of while * <br> * <br> * <br> * @author Alex * @version 1.0 */
public class WhileTest {

    /** * 主方法,程序的入口 * @param args */
    public static void main(String[] args) {
        //循环初始化值
        int count = 0;
        //循环条件
        while(count < 10){
            System.out.println(count);
            //迭代流程
            count++;
        }
        System.out.println("循环结束!");
    }
}

[2]do while
do while 和while循环的区别在于:while先判断条件在执行流程,而do while是先执行流程,后判断条件,do while必须在循环条件后加分号。

do{
//流程
}while(条件);
package com.alex.demo02;


/** * Description * <br>网站:<a href= "http://blog.csdn.net/qq_32347977">Alex的博客</a> * <br>This is a demo of while * <br> * <br> * <br> * @author Alex * @version 1.0 */
public class DoWhileTest {

    /** * 主方法,程序的入口 * @param args */
    public static void main(String[] args) {
        //循环初始化值
        int count = 0;
        //循环条件
        do{
            System.out.println(count);
            //迭代流程
            count++;
        }while(count < 10);
        System.out.println("循环结束!");
    }
}

[3]for

for循环比while简洁,大部分情况下都可以代替while循环。

for(初始化;条件;流程){
    //操作
}
package com.alex.demo02;

/** * Description * <br>网站:<a href= "http://blog.csdn.net/qq_32347977">Alex的博客</a> * <br>This is a demo of while * <br> * <br> * <br> * @author Alex * @version 1.0 */
public class ForTest {

    /** * 主方法,程序的入口 * @param args */
    public static void main(String[] args) {
        //循环的初始化值,循环条件和迭代语句都在for一行
        for(int i=0; i< 10; i++){
            System.out.println(i);
        }
        System.out.println("循环结束!");
    }
}

[4]嵌套循环

嵌套循环是在一个循环内加入另一个循环,可叠加多个。

package com.alex.demo02;

/** * Description <br> * 网站:<a href= "http://blog.csdn.net/qq_32347977">Alex的博客</a> <br> * This is a demo of ForNested <br> * <br> * <br> * * @author Alex * @version 1.0 */
public class ForNestedTest {

    /** * 主方法,程序的入口 * * @param args */
    public static void main(String args[]) {

        //外层虚幻
        out:for (int i = 1; i <= 9; i++) { // 控制行
            //内层循环
        inner:for (int j = 1; j <= i; j++) { // 控制列

                System.out.print(i + "*" + j + "=" + (i * j) + "\t");

            }

            System.out.println();

        }

    }

}

continue 是跳过本次循环执行下一次循环,break是直接关闭循环。
这是一个99乘法表,如果想不要那一列可以在inner循环加上:continue inner;如果不想要那一列可以外循环加continue out;跳出内循环:break inner;跳出外循环 break out;如果想结束,直接return。

你可能感兴趣的:(java,流程控制,while,for,doWhile)