青岛响应式网站推广软文
Java 条件语句概述
条件语句通过判断给定条件的真假来控制程序的执行。本小节将详细介绍 Java 中各类条件语句。
1. if 语句
1.1 语法
用于根据给定条件决定是否执行一段代码。if 块仅在关联的布尔表达式为 true
时执行。
if (条件) {// 当条件成立时执行此处代码
}
大括号内的内容为语句块。
1.2 实例
public class IfStatement1 {public static void main(String args[]) {int age = 18;if (age >= 18) {System.out.println("在中国你已经成年");}}
}
当 age >= 18
为 true
时,执行 if 语句块。若语句块内只有一条语句,可省略花括号,但不推荐。
2. if … else … 语句
2.1 语法
结合 else
使用,当布尔表达式为 false
时,执行 else
语句块。
if (条件) {// 如果条件成立,执行此处代码
} else {// 如果条件不成立,执行此处代码
}
2.2 实例
public class IfElseStatement1 {public static void main(String args[]) {int age = 15;if (age >= 18) {System.out.println("在中国你已经成年");} else {System.out.println("在中国你还未成年");}}
}
当 age >= 18
为 false
时,执行 else
语句块。
补充
可使用条件表达式(三目运算符)表达式1? 表达式2 : 表达式3
简化 if else
语句。
public class IfElseStatement2 {public static void main(String args[]) {int age = 15;System.out.println(age >= 18? "在中国你已经成年" : "在中国你还未成年");}
}
3. if … else if … else 语句
3.1 语法
结合 else if
实现更复杂的程序分支结构。
if (条件1) {// 如果条件1成立,执行此处代码
} else if (条件2) {// 如果条件1不成立,并且条件2成立,执行此处代码
} else {// 如果条件1、条件2都不成立,执行此处代码
}
3.2 实例
// 根据给定分数向屏幕打印评级
public class IfElseIfStatement {public static void main(String args[]) {int score = 70;if (score >= 90) {System.out.println("优秀");} else if (score >= 70) {System.out.println("良好");} else if (score >= 60) {System.out.println("及格");} else {System.out.println("不及格");}}
}
程序遇到符合条件的分支就执行该分支语句块,不再执行其他分支。
3.3 嵌套 if … else 语句
可在 if
或 else if
语句中嵌套使用 if
或 else if
语句。
public class IfElseStatement1 {public static void main(String[] args) {int age = 25;int sex = 1; // 此处用sex变量表示性别,1:男 2:女if (age >= 20) {System.out.println("在中国你已经成年");if (sex == 2) {System.out.println("并且到了法定的结婚年龄");}if (sex == 1 && age >= 22) {System.out.println("并且到了法定的结婚年龄");}} else {System.out.println("在中国你还未成年");}}
}
4. switch 语句
4.1 语法
可理解为简写版的多个 if.. else
语句。
switch (值) {case 值1:语句1.1...语句n.1break;case 值2:语句2.1...语句2.nbreak;default:语句n.1...语句n.n
}
规则:
switch
语句中的变量类型可以是byte
、short
、int
、char
或者String
。- 可拥有多个
case
语句,每个case
后跟要比较的值和冒号。 case
语句中的值数据类型必须与变量相同,且只能是常量或字面常量。- 变量值与
case
语句值相等时,执行该case
后的语句,直到break
跳出。 - 若无
break
,程序继续执行下一条case
语句,直到出现break
。 - 可包含
default
分支,一般为最后一个分支,无匹配时执行,无需break
。
4.2 实例
public class SwitchStatement1 {public static void main(String args[]) {int i = 2;switch (i) {case 1:System.out.println("i的值为1");break;case 2:System.out.println("i的值为2");break;default:System.out.println("i的值既不等于1,也不等于2");}}
}
从 JDK5 开始,可与枚举值一起使用;从 JDK8 开始,可与 String
值一起使用。
5. 小结
Java 中条件语句主要有 if
语句和 switch
语句。
- 场景选择:多个
==
判断用switch
语句更清晰;复杂条件表达式用if
语句更合适。 - if 语句使用建议:
- 每个分支用
{}
括起来。 - 多个
if... else
时,将可能性大的分支排在前面。 - 避免
if... else
嵌套层级过深。
- 每个分支用
- switch 语句使用建议:
- 每个分支不要漏写
break
。 - 总是写上
default
分支。
- 每个分支不要漏写