1.基本选择结构if
语法:
if ( 条件 ) {
//代码块
}
注意:
1.条件的结果必须是布尔值
2.代码块中只有一条语句时,建议不省略{ }
2.逻辑运算符:
&&:并且
a && b :a和b两个表达式同时成立(同时为true)整个表达式(a && b)才为true
||:或者
a || b :a和b两个表达式其中有一个成立时整个表达式(a || b)为true
!:非
!a:表达式结果取相反值
public class Demo03 {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
System.out.println("请输入Java成绩:");
//Java成绩
int java=input.nextInt();
System.out.println("请输入音乐的考试成绩:");
int music=input.nextInt();
//如果Java成绩大于98,音乐的成绩大于80才会奖励
//a && b :a和b两个表达式同时成立(同时为true)整个表达式(a && b)才为true
//a || b :a和b两个表达式其中有一个成立时整个表达式(a || b)为true
if((java>98 && music>80)||(java==100&&music>70)){
System.out.println("奖励MP4");
}
}
}
3.if-else:
语法:
if (条件) {
//代码块1
}else{
//代码块2
}
当条件为真时会执行代码块一,不会走代码块2
当条件为假时会执行代码块二,不会走代码块1
4.多重if选择结构:
语法:
if ( 成绩>=80) {
//代码块1
}
else if (成绩>=60) {
//代码块2
}
else {
//代码块3
}
成绩>=80为条件1
成绩>=60为条件2
如果条件1结果为真时会执行代码块1,代码块1执行完毕后不会再去判断其他条件,直接执行多重if选择结构以下的代码
如果条件1结果为假时会再次判断条件2,如果条件2为真时会执行代码块2,代码块2执行完毕后不会再去判断其他条件,直接执行多重if选择结构以下的代码
如果条件2结果为假时会执行代码块3,代码块3执行完毕后,直接执行多重if选择结构以下的代码
存款买车案例
我想买车,买什么车决定于我在银行有多少存款
如果我的存款超过500万,我就买凯迪拉克
否则,如果我的存款超过100万,我就买帕萨特
否则, 如果我的存款超过50万,我就买依兰特
否则, 如果我的存款超过10万,我就买奥托
否则, 如果我的存款10万以下 ,我买捷安特
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input=new Scanner(System.in);
System.out.println("输入钱数决定买什么车");
System.out.println("请输入钱数(万):");
int q =input.nextInt();
if (q>=500){
System.out.println("凯迪拉克");
}else if(q>=100){
System.out.println("帕萨特");
}else if(q>=50){
System.out.println("依兰特");
}else if(q>=10){
System.out.println("奥拓");
}else if(q<10){
System.out.println("捷安特");
}
}
}
5.嵌套if选择结构:
语法:
if(条件1) {
if(条件2) {
//代码块1
} else {
//代码块2
}
} else {
//代码块3
}
如果条件1为真时,去判断条件2,如果条件2为真时会执行代码块1,如果条件2为假时会执行代码块2
如果条件1为假时回去执行代码块3
案例:学校举行运动会,百米赛跑跑入10秒内的学生有资格进决赛,根据性别分别进入男子组和女子组
public class Demo07 {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
System.out.println("请输入成绩:");
int score=input.nextInt();
if(score<=10){
System.out.println("进入决赛!");
System.out.println("请输入您的性别:");
String sex=input.next();
if(sex.equals("男"))
{
System.out.println("进入男子组决赛");
}else{
System.out.println("进入女子组决赛");
}
}else
{
System.out.println("抱歉!你没有进入决赛");
}
}
}