一.什么是if选择结构
if选择结构是根据条件判断之后再做处理的一种语法结构.
if(条件布尔类型){
代码块 //当条件为真时,执行。
}//当条件为假时,执行。
例:
package cn.kgc.mls.lianxi; public class boke { public static void main(String[] args) { double a=98; if (a>99) { System.out.println("真"); } System.out.println("假");
二.常用逻辑运算符
&&(与,并且),表达式:条件1&&条件2 说明:俩个条件同时为真,则结果为真;俩个条件有一个为假,则结果为假
||(或,或者),表达式:条件1||条件2 说明:俩个条件有一个为真,则结果为真;俩个条件同时为假,则结果为假
!(非) ,表达式:!条件 说明: 条件为真时,结果为假;条件为假时,结果为真
| A | B | A&&B | A\|\|B |
| ---- | ---- | ---- | ------ |
| T | T | T | T |
| T | F | F | T |
| F | T | F | T |
| F | F | F | F |
&& 一假必假
|| 一真必真
例:
public class lianxi1 { public static void main(String[] args) { int a=85; int b=81; int c=100; int d=69; if ((a>98 && b>80) || (c==100 && d>70)){ System.out.println("奖励"); } System.out.println("无奖励"); } }
三.if-else语法
语法:
if (条件) {
//代码块1
}else{
//代码块2
}
当条件为真时会执行代码块一,不会走代码块2
当条件为假时会执行代码块二,不会走代码块1
例:
package cn.kgc.mls.lianxi3; import java.util.Scanner; public class boke { public static void main(String[] args) { Scanner sc=new Scanner(System.in); double tiCai=sc.nextDouble(); if (tiCai==500){ System.out.println("买车,资助希望工程,去欧洲旅游"); }else{ System.out.println("买下一期体彩,菩萨保佑"); } } }
四.多重if选择结构
多重if选择结构
语法:
if ( 成绩>90) {
//代码块1
}
else if (成绩>=60) {
//代码块2
}
else {
//代码块3
}
成绩>90为条件1
成绩>=60为条件2
如果条件1结果为真时会执行代码块1,代码块1执行完毕后不会再去判断其他条件,直接执行多重if选择结构以下的代码
如果条件1结果为假时会再次判断条件2,如果条件2为真时会执行代码块2,代码块2执行完毕后不会再去判断其他条件,直接执行多重if选择结构以下的代码
如果条件2结果为假时会执行代码块3,代码块3执行完毕后,直接执行多重if选择结构以下的代码
例:
package cn.kgc.mls.lianxi; import java.util.Scanner; public class boke { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int a=sc.nextInt(); if(a>90){ System.out.println("优秀"); }else if(a>=60){ System.out.println("中等"); }else{ System.out.println("差"); } } }
五.嵌套if选择结构
语法:
if(条件1) {
if(条件2) {
//代码块1
} else {
//代码块2
}
} else {
//代码块3
}
如果条件1为真时,去判断条件2,如果条件2为真时会执行代码块1,如果条件2为假时会执行代码块2
如果条件1为假时回去执行代码块3
例:
package cn.kgc.mls.day04; import java.util.Scanner; public class lianxi { public static void main(String[] args) { Scanner a=new Scanner(System.in); System.out.println("请输入成绩:"); int score=a.nextInt(); if(score<=10){ System.out.println("进入决赛!"); System.out.println("请输入您的性别:"); String b=a.next(); if(b.equals("男")) { System.out.println("进入男子组决赛"); }else{ System.out.println("进入女子组决赛"); } }else { System.out.println("抱歉!你没有进入决赛"); } } }
五.switch选择结构
switch选择结构可以很好地解决等值判断问题.它与if选择结构的区别就是if选择结构可以更好地处理区间判断问题,而switch可以更好的处理等值判断问题。
switch选择结构可以更好地解决等值判断问题.
例:
package cn.kgc.mls.ceshi; import java.util.Scanner; public class boke { @Test public void test01(){ int mc=1; switch(mc){ case 1: System.out.println("夏令营"); break; case 2: System.out.println("电脑一个"); break; case 3: System.out.println("硬盘一个"); break; default: System.out.println("继续努力明年再来"); break; } } }
注意
1.常量名不能重复
2.case后面的常量不是必须要按照某种顺序的,switch后面的值会去找和自己匹配的常量值,然后执行对应的代码库,如果没有找到,则执行default中的值
3.break结束当前的执行内容。在case后面执行,如果没有break代码会继续向下执行。
4.default在最后的时候,break是可以省略的(不推荐),在其他位置的时候,不能省略。