9. Java条件语句 6个月前

编程语言
136
9. Java条件语句

Java条件语句

条件语句,顾名思义,就是根据条件的真假来执行不同的操作

Java的条件语句分为 if 和 switch 两种

if 又分3种情况 : 如下

  • if
    1. if
    2. if ... else ...
    3. if ... else if ... else ....
  • switch

if 条件

条件语句的关键字是if , else

语法如下:

  • if 语句

    if ( 条件 ) {
        条件为 true 时,执行的代码
    }
    
  • if ... else .... 语句

    if ( 条件 ) {
        条件为 true 时,执行的代码
    } else {
        条件为 false 时,执行的代码
    }
    
  • if .. else if ... else ... 语句

    if ( 条件1 ) {
        条件1 为 true 时,执行的代码
    } else if (条件2){
        条件2 为 true 时,执行的代码
    } else if (条件3) {
        条件3 为 true 时,执行的代码
    } else {
        上面的条件都不满足时,执行的代码
    }
    

通过前面的章节知道:大括号中包含的内容就是语句块

下面用几个示例代码来讲解

示例 1 : if 的使用

public class HelloWorld {
    public static void main(String[] args) {

        int score = 75;
        if (score > 60) {
            System.out.println("及格了,很不错");
        }
    }
}

//输出: 及格了,很不错

如果 分数 score 只有 50 分,也想要打印一句话呢,看下面的示例

示例 2 : if ... else... 的使用

public class HelloWorld {
    public static void main(String[] args) {

        int score = 50;
        if (score > 60) {
            System.out.println("及格了,很不错");
        }else {
            System.out.println("没有及格,加油啊");
        }
    }
}

//输出: 没有及格,加油啊

上面可以看出, if 中的条件不满足,所以代码执行的是 else 中的语句

所以输出 “没有及格,加油啊”

示例3: if ... else if ... else ... 语句

public class HelloWorld {
    public static void main(String[] args) {

        int score = 85;
        if (score > 90 ) {
            System.out.println("非常优秀");
        } else if(score > 80 ) {
            System.out.println("优秀");
        } else if(score > 70) {
            System.out.println("良");
        }else if (score > 60){
            System.out.println("及格了");
        } else {
            System.out.println("不及格");
        }
    }
}

//输出: 优秀

上面的例子可以看出, score 第一个满足的条件是 score > 80 ,所以打印 "优秀" ,跳出整个 if 条件

后面的 score 虽然也满足 score > 70 , scroe > 60 这2个条件

但是也不会执行的,因为 if 语句只匹配第一个条件,只要满足了第一个条件,后面的就不会再判断了。

switch 条件

switch 条件可以理解为 if ... else if ... else ... 这种形式

switch的语法如下:

switch ( 值 ) {
    case 值1:
        执行代码
        break;
    case 值2:
        执行代码
        break;
    case 值3:
        执行代码
        break;
    case 值n:
        执行代码
        break;
    default:
        执行默认代码
        break;
}

下面看一个简单的示例:

public class HelloWorld {
    public static void main(String[] args) {

        int day = 3;
        switch ( day ) {
            case 1:
                System.out.println("星期一");
                break;
            case 2:
                System.out.println("星期二");
                break;
            case 3:
                System.out.println("星期三");
                break;
            case 4:
                System.out.println("星期四");
                break;
            case 5:
                System.out.println("星期五");
                break;
            default:
                System.out.println("未知");
                break;
        }
    }
}

//输出 : 星期三

由上面可知,day 的值是 3 , 满足 第 3 个case语句,所以打印:星期三

从JDK 8 开始,switch语句可以与 String 一起使用了

如下:

public class HelloWorld {
    public static void main(String[] args) {

       String site = "www.helloworld.net";
       switch (site){
           case "www.baidu.com":
               System.out.println("这是百度的域名");
               break;
           case "www.qq.com":
               System.out.println("这是QQ的域名");
               break;
           case "www.helloworld.net":
               System.out.println("这是HelloWorld开发者社区的域名");
               break;
           default:
               System.out.println("未知域名");
               break;
       }
    }
}

//输出 : 这是HelloWorld开发者社区的域名

注意:每个分支不要忘了 break

因为switch 语句在满足一个条件后,执行完代码,还会继续匹配下一个 case 是否满足,如果满足,还会执行相应的语句

所以加了 break 就跳出了 switch 语句,下面的语句不会再去匹配执行了。

这点也是和 if else 的区别, if 语句有多个条件时,只会匹配一个条件

小结

在Java中 ,条件语句主要有 if switch 两种,在实际编码中,这些语句使用的非常广

下面来简单的总结一下:

  • 对于 if 条件, 每个分支用 { } 括起来

  • if else 的嵌套层级不要太深

  • case 语句不要漏写 break

  • switch 条件,如果写上 default是一个好的习惯,虽然也可以不写

image
EchoEcho官方
无论前方如何,请不要后悔与我相遇。
1377
发布数
439
关注者
2222681
累计阅读

热门教程文档

React Native
40小节
Python
76小节
Javascript
24小节
MyBatis
19小节
Vue
25小节