if语句:
分类
1.单if语句
2.if_else语句
3.多重if语句
4.嵌套if语句
单if语句:
格式:
if(条件表达式){
语句体
}
注意:
1.条件表达式的结果必须是boolean类型
2.如果if语句体中只有一条语句,{}可以省略,但是不建议!
public class IfDemo01 {
public static void main(String[]args){
Scanner input = new Scanner(System.in);
System.out.print("请输入学习成绩:");
double score = input.nextDouble();
if(score >= 70){
System.out.print("奖励手机");
}
}
}
if_else语句:
格式:
if(条件表达式){
语句体1;
} else {
语句体2;
}
执行流程:
当表达式为真时,执行语句体1,否则,执行语句体2,即else部分!
public class IfDemo01 {
public static void main(String[]args){
Scanner input = new Scanner(System.in);
System.out.print("请输入学习成绩:");
double score = input.nextDouble();
if(score >= 70){
System.out.print("奖励手机");
} else {
System.out.print("奖励电脑");
}
}
}
多重if_else语句:
格式:
if(布尔表达式1) {
语句体1;
} else if(布尔表达式) {
语句体2;
} else if(布尔表达式n) {
语句体n;
} else {
语句体n+1;
}
执行流程:
逐条if语句进行判断
条件匹配,进入语句体
否则对if语句继续匹配
eg:
package com.sxt_ifdemo;
import java.util.Scanner;
public class IfDemo01 {
public static void main(String[] args) {
/*张三Java成绩大于98分,而且音乐成绩大于80分,
老师奖励他;或者Java成绩等于100分,音乐成绩大于70分,老师也可以奖励他。*/
Scanner input = new Scanner(System.in);
System.out.print("请输入JAVA成绩:");
double javaScore = input.nextDouble();
System.out.print("请输入请输入音乐成绩:");
double musicScore = input.nextDouble();
if( javaScore > 100 || javaScore < 0 || musicScore >100 || musicScore < 0 ) {
System.out.println("你这输入的什么鬼!");
} else if (javaScore > 98 && musicScore > 80) {
System.out.println("奖励一个手机1");
} else if( javaScore ==100 && musicScore > 70) {
System.out.println("奖励一个手机2");
} else {
System.out.println("考这样还想要奖励?");
}
}
}
嵌套if语句
eg:
package com.sxt_ifdemo;
import java.util.Scanner;
public class Practice07 {
public static void main(String[] args) {
/*顾客折扣
普通顾客 购物满100元9折
会员购物 8折(会员购物满200元 7.5折)
输入是否是会员,再输入购物金额,输出实际付款。*/
Scanner input = new Scanner(System.in);
System.out.print("是否为会员:");
String isVip = input.nextLine();
System.out.print("请输入消费金额:");
double money = input.nextDouble();
if (isVip.equals("是")) {
if (money >= 200) {
money *= 0.75 ;
} else {
money *= 0.8 ;
}
} else if (isVip.equals("否")) {
if (money >= 100) {
money *= 0.9 ;
}
} else {
System.out.println("您输入的有误!");
}
System.out.println("您的消费金额为:" + money);
}
}
生成一个随机数字:
package com.sxt_ifdemo;
import java.util.Scanner;
public class IfElseDemo02 {
public static void main(String[] args) {
/*输入四位数字的会员号的百位数字等于产生的随机数字即为幸运会员
* ,提示恭喜您中奖了,否则没中奖。*/
for (int i = 0 ; i < 1 ; i++ ) {
int num = (int)(Math.random() * 10);
Scanner input = new Scanner(System.in);
System.out.print("请输入四位数会员号:");
int vip = input.nextInt();
if( vip < 1000 || vip > 9999) {
System.out.println("您输入的会员号码有误,请重新输入!");
}else if ( (vip / 100) % 10 == num ) {
System.out.println("恭喜您,中奖了!");
} else {
System.out.println("很遗憾,您未中奖!");
}
System.out.println("幸运数字为:" + num );
}
}
}