Day12-if选择结构
Day12-if选择结构
if单选择结构
我们很多时候需要去判断一个东西是否可行,然后我们才去执行,这样一个过程在程序中用if语句来表示
语法:
if(布尔表达式)
{
//如果布尔表达式为true将执行的语句
}
实例:判断输入的字符串是不是Hello
Scanner scanner = new Scanner(System.in);
System.out.println("请输入");
String s= scanner.nextLine();
//equals:判断字符串是否相等
if(s.equals("Hello")){
System.out.println(s);
}else System.out.println("字符串不相等");
Scanner close;
if双选择结构
if双选择结构
那现在有个需求,公司要收购一个软件,成功了,给人支付100万元,失败了,自己找人开发。这样的需求用一个if就搞不定,我们需要有两个判断,需要一个双选结构,所以就有了if-else结构。
语法:
if(布尔表达式){
//如果布尔表达式的值为true
}else{
//如果布尔表达式的值为false
}
实例:判断考试分数是否及格
Scanner scanner = new Scanner(System.in);
System.out.println("请输入本次考试分数:");
//考试分数大于60分是及格,小于60分不及格
int score= scanner.nextInt();
if(score<60){
System.out.println(score+"这个分数不及格,Do not pass the exam");
}else {
System.out.println("Pass the exam");
}
Scanner close;
if多选择结构
我们发现刚才的代码不符合实际情况,真实的情况还可能存在ABCD,存在区间多级判断。比如90-100就是A,80-90 就是B..等等,在生活中我们很多的时候的选择也不仅仅只有两个,所以我们需要一个多选择结构来处理这类问题!
语法:
if(布尔表达式 1){
//如果布尔表达式 1的值为true执行代码
}else if(布尔表达式 2){
//如果布尔表达式 2的值为true执行代码
}else if(布尔表达式 3){
//如果布尔表达式 3的值为true执行代码
}else {
//如果以上布尔表达式都不为true执行代码
}
实例:对考试成绩分级
Scanner scanner = new Scanner(System.in);
System.out.println("请输入本次考试分数:");
//考试分数大于60分是及格,小于60分不及格
int score= scanner.nextInt();
if(score>100){
System.out.println("成绩造假");
}else if (score==100){
System.out.println("成绩满分");
} else if (score<100&&score>90) {
System.out.println("成绩优秀");
} else if (score<90&&score>=70) {
System.out.println("成绩为良");
} else if (score<70&&score>=60) {
System.out.println("成绩一般");
}else System.out.println("成绩不及格1");
Scanner close;
注意:
if 语句至多有 1 个 else 语句,else 语句在所有的 else if 语句之后。
if 语句可以有若干个 else if 语句,它们必须在 else 语句之前。
一旦其中一个 else if 语句检测为 true,其他的 else if 以及 else 语句都将跳过执行
if嵌套结构
嵌套的 if 结构使用嵌套的 if...else 语句是合法的,可以在另一个 if 或者 else if 语句中使用 if 或者 else if 语句,也可以像 if 语句一样嵌套 else if...else。
语法:
if (布尔表达式 1)
{
// 如果布尔表达式 1 的值为 true 执行代码;
if (布尔表达式 2)
{
//如果布尔表达式 2 的值为 true 执行代码
}
}。
思考:我们需要寻找一个数,在 1 - 100 之间。