Java的if语句 您所在的位置:网站首页 java的if语句格式 Java的if语句

Java的if语句

2024-06-10 09:03| 来源: 网络整理| 查看: 265

if 结构

if 语句是使用最多的条件分支结构。

if 语句的最简语法格式如下,表示“如果满足某种条件,就进行某种处理”。

if (条件表达式) {

 语句块;

}

其中“条件表达式”和“语句块”是比较重要的两个地方。

条件表达式:条件表达式可以是任意一种逻辑表达式,最后返回的结果必须是一个

布尔值。如果条件为真,那么执行语句块;如果条件为假,则语句块将被绕过而不被执行

语句块:该语句块可以是一条语句也可以是多条语句。如果仅有一条语句,可省略

条件语句中的大括号 {}。当从编程规范角度不要省略大括号,省略大括号会使程序的可读

性变差。

if 条件语句的运行流程如图 1 所示。

图 1 if 语句执行流程图

例 1

假设有 num1 和 num2 两个变量,它们的值分别是 50 和 34。下面编写程序,要求使用 if语句判断 num1 和 num2 的大小关系,并输出比较结果。

实现代码如下:

public static void main(String[] args) {

 int num1 = 50;

 int num2 = 34;

 if (num1 > num2) {

 System.out.println("num1 大于 num2");

 }

 if (num1 == num2) {

 System.out.println("num2 等于 num2");

 }

 if (num1 < num2) {

 System.out.println("num1 小于 num2");

 }

}

该段选择语句判断了 num1 值和 num2 值的大于、等于和小于关系。此处 num1 为 50,

num2 为 34,所以执行后会输出“num1 大于 num2”。

if-else 结构

单 if 语句仅能在满足条件时使用,而无法执行任何其他操作(停止)。而结合 else 语句的if 可以定义两个操作,此时的 if…else 语句表示“如果条件正确则执行一个操作,否则执行另一个操作”。

使用 if…else 语句的语法格式如下所示:

if (表达式) {

 语句块 1;

} else {

 语句块 2;

}

在上述语法格式中,如果 if 关键字后面的表达式成立,那么就执行语句块 1,否则的话则执行语句块 2,其运行流程如图 2 所示。

图 2 if…else 运行流程

例 2

在例 1 中为实现比较 num1 和 num2 的大小,使用了 3 个 if 条件语句分别判断大于、等于和小于的情况。下面使用 if…else 双条件来实现,具体代码如下:

public static void main(String[] args) {

 int num1 = 50;

 int num2 = 34;

 // 如果 num1 等于 num2

 if (num1 == num2) {

 System.out.println("num1 等于 num2");

 }

 // 如果 num1 大于 num2

 if (num1 > num2) {

 System.out.println("num1 大于 num2");

 } else {

 // 否则就是 num1 小于 num2

 System.out.println("num1 小于 num2");

 }

}

双条件语句减少了代码的编写量,同时增强了程序的可读性。简化后的结果还是一样,执

行后会输出“num1 大于 num2”。

多条件 if-else-if 语句

if 语句的主要功能是给程序提供一个分支。然而,有时候程序中仅仅多一个分支是远远不

够的,甚至有时候程序的分支会很复杂,这就需要使用多分支的 if…else if 语句。

通常表现为“如果满足某种条件,就进行某种处理,否则如果满足另一种条件才执行另一

种处理……,这些条件都不满足则执行最后一种条件”。

if…else if 多分支语句的语法格式如下所示:

if(表达式 1) {

 语句块 1;

} else if(表达式 2) {

 语句块 2;

...

} else if(表达式 n) {

 语句块 n;

} else {

 语句块 n+1;

}

可以看出,else-if 结构实际上是 if-else 结构的多层嵌套。明显的特点就是在多个分支中只执行一个语句组,而其他分支都不执行,所以这种结构可以用于有多种判断结果的分支中。

在使用 if…else if 语句时,依次判断表达式的值,当某个分支的条件表达式的值为 true 时,则执行该分支对应的语句块,然后跳到整个 if 语句之外继续执行程序。如果所有的表达式均为 false,则执行语句块 n+1,然后继续执行后续程序,其运行流程如图 3 所示。

图 3 if…else if 语句的执行流程

例 3

同样以比较 num1 和 num2 的大小为例,使用 if…else if 多条件的实现代码如下:

public static void main(String[] args) {

 int num1 = 50;

 int num2 = 34;

 if (num1 == num2) { // 如果 num1 等于 num2

 System.out.println("num1 等于 num2");

 } else if (num1 > num2) { // 如果 num1 大于 num2

 System.out.println("num1 大于 num2");

 } else { // 否则就是小于

 System.out.println("num1 小于 num2");

 }

}

如上述代码所示,num1 和 num2 不满足 if 语句的“num1==num2”条件,接着测试 else if 的“num1>num2”条件,满足该条件并输出“num1 大于 num2”。

嵌套 if 的使用

if 语句的用法非常灵活,不仅可以单独使用,还可以在 if 语句里嵌套另一个 if 语句。同样,if…else 语句和 if…else if 语句中也可以嵌套另一个 if 结构的语句,以完成更深层次的判断。

嵌套 if 的语法格式如下:

if(表达式 1) {

 if(表达式 2) {

 语句块 1;

 } else {

 语句块 2;

 }

} else {

 if(表达式 3) {

 语句块 3;

 } else if(表达式 4) {

 语句块 4;

 } else {

 if(表达式 n) {

 语句块 n;

 } else {

 语句块 n+1;

 }

 }

}

在上述格式中,应该注意每一条 else 与离它最近且没有其他 else 对应的 if 相搭配,其执行流程如图 4 所示。

图 4 嵌套 if 语句执行流程

例 7

活动计划安排,如果今天是工作日,去上班;如果今天是周末,则出去游玩;同时,如果

周末天气晴朗,去室外游乐场游玩,否则去室内游乐场游玩。实现代码如下:

public static void main(String[] args) {

 String today = "周末";

 String weather = "晴朗";

 if (today.equals("周末")) {

 if (weather.equals("晴朗")) {

 System.out.println("去室外游乐场游玩");

 } else {

 System.out.println("去室内游乐场游玩");

 }

 } else {

 System.out.println("去上班");

 }

}

如上述代码所示,today 满足 if 语句的“today.equals("周末")”条件,接着测试 weather 是否满足“weather.equals("晴朗")”条件,满足该条件输出“去室外游乐场游玩”。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有