温馨提示:本文最后更新于2025年06月12日

什么是if/else选择结构

if/else选择结构简述

if/else选择结构是java中常用的判断选择语句,作用是根据条件选择执行哪些代码。

判断如果符合条件执行哪些代码,否则执行哪些代码。

if/else选择结构的基本语法

if(条件){
//符合条件执行的代码
}else{
//不符合条件执行的代码
}

这是一个标准的if/else选择结构基本语法。如果括号中“条件”的值为true,则表示符合条件,程序会选择执行if中的代码。如果括号中“条件”的值为false,则表示不符合条件,程序会选择执行else中的代码。

if语句中的“条件”通常为包含关系运算符的表达式,例如1==12>1a<b等,如果不了解如何使用关系运算可以查看上一篇文章:

当然if/else选择结构不止有这一种写法,还有简单if结构,多重if结构,嵌套if结构等,下面就来对这些常用的if/else选择结构详细举例讲解。

简单if结构讲解

简单if结构语法

if(条件){
//符合条件执行的代码
}

如果符合条件则执行代码,否则不执行。

简单if结构代码示例

判断用户输入的内容是否为数字1。

Scanner scanner = new Scanner(System.in);
//创建一个Scanner对象,用于接收用户输入
//后面Java面向对象会细讲,这里只需要知道创建了一个叫做scanner的东西用来接收用户输入的内容

System.out.println("请输入一个整数:");
//提示用户输入一个整数

int num = scanner.nextInt();
//使用scanner对象接收用户输入的整数,并赋值给变量num
//注意这里只能输入整数否则会报错

if(num==1){
  System.out.println("输入了1");
}
//判断如果输入了1则打印“输入了1”
//否则不会执行任何操作

运行测试。

输入1:

if/else示例代码运行结果:用户输入1,输出内容为“输入了1”

输入其他数字:

if/else示例代码运行结果:用户输入2,没有输出任何内容

没有输出任何东西。

简单if结构通常可以多个并行使用:

Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个整数:");
int num = scanner.nextInt();

if(num==1){
  System.out.println("输入了1");
}
if(num==2){
  System.out.println("输入了2");
}
if (num==3){
  System.out.println("输入了3");
}

标准if/else结构讲解

标准if/else结构比简单if多了个else,不符合条件执行的代码。

标准if/else结构语法

if(条件){
//符合条件执行的代码
}else{
//不符合条件执行的代码
}

标准if/else结构代码示例

判断输入了数字1还是其他数字。

Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个整数:");
int num = scanner.nextInt();

if(num==1){
  System.out.println("输入了1");
}else {
  System.out.println("输入了其他数字");
}

运行测试。

输入数字1:

if/else示例代码运行结果:用户输入1,输出内容为“输入了1”

输入其他数字:

if/else示例代码运行结果:用户输入2,输出内容为“输入了其他数字”

多重if/else结构讲解

多重if/else结构可以添加更多的判断选择。

多重if/else结构语法

if(条件1){
//符合条件1执行的代码
}else if(条件2){
//符合条件2执行的代码
}else{
//两个条件都不符合执行的代码
}

多重if/else结构代码示例

if(num==1){
  System.out.println("输入了数字1");
}else if(num==2){
  System.out.println("输入了数字2");
}else{
  System.out.println("输入了其他数字");
}

和上面原理相同,只是多了更多选择项,应该都能看懂。

运行结果:

if/else示例代码运行结果:用户输入1,输出内容为“输入了1”
if/else示例代码运行结果:用户输入2,输出内容为“输入了2”
if/else示例代码运行结果:用户输入3,输出内容为“输入了其他数字”

嵌套if/else结构讲解

嵌套if/else结构就是在if/else中再写一个if/else。

嵌套if/else结构语法

if(条件1){
  if(条件2){
    //符合条件1并且符合条件2执行的代码
  }else{
    //符合条件1但是不符合条件2执行的代码
  }
}else{
  //不符合条件1执行的代码
}

用到的还是上面讲的那些if/else结构,只是在if/else中嵌套了另一个判断。

应该也都能看懂,不做过多解释了,唯一要注意的是:实际应用中尽量不要嵌套太多层if/else,否则会严重影响程序运行效率!

更复杂的if/else判断条件

使用逻辑运算符进行更复杂的判断。

同时符合多个条件

if(num1==1 && num2==2){
}

解释:需要同时符合num1==1num2==2两个条件,有一个条件不符合都不会执行if中的代码!

其中“&&”为逻辑运算符,表示需要同时符合多个条件。

符合任一条件

if(num1==1 || num2==2){
}

解释:符合num1==1num2==2任意一个条件都会执行if中的代码。

逻辑运算符“||”表示符合多个条件中的任意条件。

if/else选择结构使用小提示

小提示1

if/else语句中的花括号“{}”,如果省略不写程序不会报错,但是只有条件后面的第一行代码会处于if/else选择结构当中。

举例:

if(1==1)
System.out.println("输入了数字1");
System.out.println("输入了数字2");

此写法相当于:

if(1==1){
  System.out.println("输入了数字1");
}
System.out.println("输入了数字2");

只有条件后面的第一行代码处于if选择结构当中。

一般if/else不会这么写,但是确实有这种写法。

小提示2

if/else选择结构的条件判断逻辑:

if语句只会判断小括号中条件的值是否为true

举例:

if(num==1){
}

这条判断语句并不是直接判断变量num的值是否为数字1,而是判断num==1的值是否为true

如果num的值为1,那么num==1的值就是true,否则就是false

if语句的判断逻辑正是查看条件的值是否为true,如果是即为符合条件(执行if),否则为不符合条件(执行else)。

那么如果我们将判断条件直接设置为“true”,那么这个判断语句永远符合条件:

if(true){
}

此if语句中的代码永远会被执行,然而这里这样写并没有什么意义,了解即可。

© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容