Java中的流程控制语句

一、分支语句

1.if else语句

if else语句是Java中常用的条件语句之一,它根据if后面的boolean表达式的值来决定执行哪个代码块,如果boolean表达式的值为true执行if语句中的代码块,如果boolean表达式的值为false则执行else语句中的代码块。例如

    public static void main(String[] args) {
        int a = 1;
        if(a > 0){
            System.out.println("a是一个大于零的数");
        }else {
            System.out.println("a是一个小于零的数");
        }

if else语句中可以只存在if语句而不存在else语句,不能自存在else语句。

如果if语句或else语句的代码块中含有多条语句,必须要放在大括号内,如果只有一条语句则可以不使用大括号。

if else语句可以嵌套使用,用来处理更加复杂的逻辑问题。例如

    public static void main(String[] args) {
        int a = 10;
        if (a > 0) {
            if (a>9){
                System.out.println("a是一个大于九的数");
            }else {
                System.out.println("a是一个小于九的数");
            }
        }else {
            System.out.println("a是一个小于零的数");
        }
    }

if else语句是一种特殊的串联编程风格。例如

    public static void main(String[] args) {
        int a = 0;
        if (a>0){
            System.out.println("大于零");
        } else if (a == 0) {
            System.out.println("等于零");
        } else if (a<0) {
            System.out.println("小于零");
        }
    }

2.switch语句

switch语句是另一种条件语句,是多路分支语句,它根据一个表达式的值来执行不同的代码块。例如

    public static void main(String[] args) {
        int a = 1;
        switch (a){
            case 1:
                System.out.println("1");break;
            case 2:
                System.out.println("2");break;
            case 3:
                System.out.println("3");break;
        }
    }

switch语句中的表达式必须是与int类型兼容的基本类型(能自动转换为int类型),字符或字符串类型(Java7后开始支持),枚举类型中的一种。

每个case标签后面必须跟着一个break语句(除非有意为之),以防止继续执行下一个case标签中的语句。

default标签是可选的,用于处理所有不匹配的情况。

二、循环语句

1.while语句

while语句是Java语言中最基本的循环语句。

​ while(boolean表达式){

​ 循环体;

}

当循环条件的boolean表达式为true时,就会重复执行,为false时,就会终止循环。例如

    public static void main(String[] args) {
        int a = 10;
        while (a>0){
            System.out.println(a);
            a--;
        }
    }

注意:

循环体包含多条语句时要放在大括号内,如果只有一条语句可以不用。

while语句从一开始就计算循环条件,如果是false则直接 不执行循环体。

while语句的循环体可以为空,这是合法的。

2.do while语句

do while语句会先执行一次循环体,之后再判断循环条件,当循环条件的boolean表达式为true时,继续执行循环体,否则终止循环。

do-while循环的语法如下:

​ do{

​ 循环体;

}while(boolean表达式);

例如

    public static void main(String[] args) {
        int a = 10;
        do {
            System.out.println(a);
        }while (a>11);
    }

3.for语句

for语句和while语句一样,先判断循环条件,再执行循环体。

for循环的语法结构:

​ for(表达式1; 表达式2; 表达式3){

​ 循环体;

}

表达式1的作用是给循环变量初始化;表达式2的作用是给出循环条件;表达式3的作用是改变循环变量的值。

如果循环体是多条语句要放在大括号里,如果循环语句只有一条可以不用。

for循环的执行过程:执行表达式1,计算表达式2,如果表达式2的值为true,执行循环体,执行表达式3,改变循环变量的值,再计算表达式2的值,如果是true,再进入循环体,形成循环,直到表达式2的值为false,结束循环,执行for后面的语句。

例如

    public static void main(String[] args) {
        for (int a=1;a<10;a++){
            System.out.println(a);
        }
    }

 注意:

for语句的表达式1、表达式2、表达式3都可以为空,如果都为空则表示为一个无限循环。

4.foreach语句

foreach语句是for语句的特殊简化版本,它可以简化遍历数组和集合的程序代码。

foreach循环的语法结构:

for(元素类型 元素变量x :待遍历的集合或数组){
引用了变量x的Java语句;

}

foreach并不是一个关键字,习惯将符合以上 语法构的for语句称之为foreach语句,foreach语句并不能完全取代for语句,但foreach语句都可以改写成for语句。

5.多重循环

各种循环语句互相嵌套,组成多重循环。例如

    public static void main(String[] args) {
        for (int i=5;i>0;i--){
            for (int j=1;j<=i;j++){
                System.out.print("*");
            }
            System.out.println();
        }
    }

三、流程跳转语句

1.break语句

break是结束当前最近的一个循环。例如

    public static void main(String[] args) {
        int a=1,b=0;
        while (true){
            b+=a++;
            if (a==50)break;
        }
        System.out.println(b);
    }

2.continue语句

continue只是结束当前的一次循环,后面还是会继续执行。例如

    public static void main(String[] args) {
        int a = 0;
        for(int b = 1;b<=50;b++){
            if (b%2==0)continue;
            else a+=b;
        }
        System.out.println(a);
    }

3.return语句

return退出本方法,跳到上层调用方法,如果本方法返回类型不是void,需要提供相应的返回值。例如

public void method(){
        System.out.println(amethod(5));//结果是1
    }
    public int amethod(int x){
        if (x>0)return 1;
        if (x==0)return 0;
        System.out.println("default:x<0");
        return -1;
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值