if-else 语法
if ( 条件 boolean 值 ) {
条件为 true,执行的代码块
} else {
条件为 false,执行的代码块
}
- if-else 语法,只有一个语句块被执行
- if 和 else 都是 Java中的关键字
- if 语法
- 把 if-else 看做一个表达式,程序整体还是顺序执行的
使用 if-else 来多买两个肉包子
- 买3个肉包子
- 如果是刚出笼的热肉包子,就多买两个呢?
int baozi = 3;
boolean baoziGangchuLong = true;
if (baoziGangchuLong) {
baozi = baozi + 2;
System.out.println("包子刚刚出笼,买了" + baozi + "个肉包子");
} else {
System.out.println("买了" + baozi + "个肉包子");
}
增强寻找可以被整除的程序
- 增强点
- 只输出可以整除的数输出商
int a = 35;
int b = 9;
if (a % b == 0) {
System.out.println(a + "可以整除" + b + "。商为" + (a / b));
}
a++;
if-else 的嵌套
求最大的数
- if-else 是一个语句,可以是另一个语句的一部分,也可以是 if-else 的一部分,即嵌套。
- 求a,b和c三个数的最大数。
int a = 10;
int b = 99;
int c = 99;
System.out.println("a=" + a + ". b=" + b + ". c=" + c);
if (a == b && b == c) {
System.out.println("a,b和c三个数等大。");
} else {
if (a > b) {
if (a > c) {
System.out.println("a是最大的数。");
} else {
if (a == c) {
System.out.printf("a和c等大。");
} else {
System.out.println("c是最大的数。");
}
}
} else {
if (b > c) {
if (b == a) {
System.out.println("a和b是等大的数。");
} else {
System.out.println("b是最大的数。");
}
} else {
if (b == c) {
System.out.println("b和c等大。");
} else {
System.out.println("c是最大的数。");
}
}
}
}
if-else 的简化
if-else 省略大括号
if ( boolean 值 )
if 语句块
else
else 语句块
if ( boolean 值 ) {
if 语句块
} else if ( boolean 值 ) {
if 语句块
} else {
else 语句块
}
- 如果 if 或者 else 的语句块只有一个语句,可以省略大括号
- 简化求最大数的程序
int a = 10;
int b = 7;
int c = 99;
System.out.println("a=" + a + ". b=" + b + ". c=" + c);
if (a == b && b == c) {
System.out.println("a,b和c相等。");
} else if (a > b & a > c) {
System.out.println("a的值最大。");
} else if (b > a && b > c) {
System.out.println("b的值最大。");
} else if (c > a && c > b) {
System.out.println("c的值最大。");
} else if (a == b && b > c) {
System.out.println("a和b等大最大。");
} else if (b == c && b > a) {
System.out.println("b和c等大最大。");
} else if (a == c && b > c) {
System.out.println("a和c等大最大。");
}
int a = 10;
System.out.println("省略大括号");
if (a > 0)
System.out.println("a大于0");
else
System.out.printf("a小于等于0");
System.out.println("比较大小的完整的写法");
if (a > 0) {
System.out.println("a大于0");
} else {
if (a == 0) {
System.out.println("a等于0");
} else {
System.out.println("a小于0");
}
}
System.out.println("比较大小的省略所有大括号的方法");
if (a > 0)
System.out.println("a大于0");
else if (a == 0)
System.out.println("a等于0");
else
System.out.println("a小于0");
System.out.println("比较大小的代码块有多个语句的最优写法");
if (a > 0) {
System.out.println("a大于0");
System.out.printf("买" + a + "个肉包子");
} else if (a == 0) {
System.out.println("a等于0");
System.out.printf("不买肉包子了!");
} else {
System.out.println("a小于0");
System.out.println("肉包子吃多了!");
}
boolean condition = true;
if (condition) {
System.out.println("condition的值为真");
} else {
System.out.printf("condition的值为假");
}
int a = 10;
int b = 20;
if (a < b) {
System.out.println("a的值为" + a + ", b的值为" + b + ". a<b是真的");
}
System.out.println("如论如何都会执行到");