java与.net比较学习系列(5) 流程控制语句

java中流程控制语句主要分为以下几类,第一,条件语句,主要包括if语句和switch语句。第二,循环语句,主要包括while循环语句,for循环语句。第三,跳转语句,主要包括三种,break跳出语句,continue继续语句和return返回语句。可以说分类和用法大致与C#基本相同。

这篇文章主要从以下几个方面进行总结。

1,条件语句之if语句

2,条件语句之switch语句

3,循环语句之while循环

4,循环语句之for循环

5,跳转语句之return返回

6,跳转语句之break跳出

7,跳转语句之continue继续

条件语句之if语句

这里的if语句包括了if语句和if…else语句。其中if语句是按条件执行,if…else则实现了双路分支,它可以控制程序在两个不同的路径中执行。当然,if语句和if…else语句可以混合使用,但是有一个原则是else语句总是和其最近的if语句相搭配。下面是示例和代码。

public class StatementIf {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // if条件语句
        int k = 87; // 表示成绩
        String str = null; // 表示成绩评价

        if (k < 0 || k > 100) {
            str = "成绩不合法";
        }
        if (k < 60) {
            str = "不及格";
        }
        if (k >= 60 && k < 75) {
            str = "合格";
        }
        if (k >= 75 && k < 85) {
            str = "优秀";
        } else {
            str = "良好";
        }
        System.out.println("分数:" + k + "评价:" + str);
    }
}

程序输出结果为:分数:87评价:良好

总结:条件语句的if语句用法与C#相同。

条件语句之switch语句

上面的示例中使用了if…else阶梯的形式进行多路分支语句的处理,但是这样的过程非常复杂,所以java提供了一种简单的形式实现了多路分支情况的处理,即switch语句。下面是示例和代码。

public class StatementSwitch {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // Switch语句
        int k = 5;
        String str = "k=" + k + "的汉字形式是:";

        switch (k) { // switch中的表达式可以是整形或字符串
        case 1:
            str += "一";
            break;
        case 2:
            str += "二";
            break;
        case 3:
            str += "三";
            break;
        case 4:
            str += "四";
            break;
        case 5:
            str += "五";
            break;
        case 6:
            str += "六";
            break;
        case 7:
            str += "七";
            break;
        default:
            str += "数字超出范围";
            break;
        }
        System.out.println(str);
    }
}

程序输出结果为:k=5的汉字形式是:五

总结:java中的switch语句用法与C#基本相同。

循环语句之while循环

while循环的特点是当条件为true时会一直执行循环体的内容,直到条件的值为假时为止。下面是示例和代码。

public class StatementWhile {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // while循环(当条件为true时会一直执行循环体的语句,直到条件为假为止)
        int n = 10;
        while (n > 0) {
            System.out.println("n=" + n);
            n--;
        }
    }
}

程序输出结果为:

n=10
n=9
n=8
n=7
n=6
n=5
n=4
n=3
n=2
n=1

总结:java的while循环语句用法与C#基本相同。

循环语句之for循环

for循环语句是while循环的加强,注意for循环的语法格式,下面是示例和代码。

public class StatementFor {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // for语句
        // 计算1到100各整数的和
        int sum = 0;
        for (int n = 100; n > 0; n--) {
            sum += n;
        }
        System.out.println("1到100各整数的和为:" + sum);
    }
}

程序输出结果:1到100各整数的和为:5050

总结:java中的for循环用法与C#基本相同,但是C#中新增了foreach语句可以遍历实现了IEnumerable接口的数组或对象集合,java中也有类似于C#中的foreach语句,但是形式不同,具体的用法在后面会进行总结。

跳转语句之return返回

return返回语句,一般用于方法的返回,它把程序的控制权交给方法的调用者。return可以有返回值也可以没有。下面是示例和代码。

public class StatementReturn {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // return返回语句,一般用于方法的返回,它把程序的控制权交给方法的调用者
        for (int i = 0; i < 10; i++) {
            if (i < 5) {
                System.out.println("第" + i + "次循环");
            } else if (i == 5) {
                return;
            }
            // 下面的语句永远不会执行
            else {
                System.out.println("第" + i + "次循环");
            }
        }
    }
}
程序输出结果为:

第0次循环
第1次循环
第2次循环
第3次循环
第4次循环

总结:java中的return返回语句的用法与C#基本相同。

跳转语句之break跳出

break语句的主要作用是强制跳出循环,即使在条件仍然满足的情况下。循环被终止,并从循环后下一句处继续执行程序。下面是示例和代码。

public class StatementBreak {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // break语句,跳出循环,将控制传递给循环后面的语句
        System.out.println("使用break的例子");
        for (int i = 0; i <= 50; i++) {
            System.out.println("i=" + i);
            if (i == 10)
                break; // 当i等于10的时候跳出循环
        }
        System.out.println("循环跳出");
    }
}

程序输出结果为:

使用break的例子
i=0
i=1
i=2
i=3
i=4
i=5
i=6
i=7
i=8
i=9
i=10
循环跳出

总结:break语句的用法与C#基本相同。

跳转语句之continue继续

continue语句的作用是终止当次循环剩余的部分,然后继续执行下次循环。它不像break完全终止循环,这一点需要注意。下面是示例和代码。

public class StatementContinue {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // continue语句,停止当前循环的剩余部分,继续执行下一次循环
        for (int i = 1; i <= 50; i++) {
            System.out.print(i + " ");
            if (i % 5 != 0) {
                continue;
            } else {
                // 当i除以5等于0时换行
                System.out.println("*****");
            }
        }
    }
}
程序输出结果为:

1 2 3 4 5 *****
6 7 8 9 10 *****
11 12 13 14 15 *****
16 17 18 19 20 *****
21 22 23 24 25 *****
26 27 28 29 30 *****
31 32 33 34 35 *****
36 37 38 39 40 *****
41 42 43 44 45 *****
46 47 48 49 50 *****

总结:java中的continue语句用法与C#基本相同,在循环语句中比较常用。

原文地址:https://www.cnblogs.com/mcgrady/p/3407437.html