51,407
社区成员
发帖
与我相关
我的任务
分享
if(表达式1){
...代码块1...
}else if(表达式2){
...代码块2...
}else if(表达式n){
...代码块n...
}else{
...else代码块...
}
表达式的结果必须是boolean类型 从上往下判断,哪个表达式先为true就执行对应的代码块 如果都不为true,执行else代码块 注意:else{}根据需求可写可不写
案例一:人类的健康值
15-20的数值内为偏瘦 20-25的数值内为健康 25-30的数值内为偏胖 (健康值算法为:体重(Kg) / 身高(米)的平方)
import java.util.Scanner;
public class 文件名{
public static void main(String[] args){
//1.从控制台输入体重和身高
Scanner scan = new Scanner(System.in);
System.out.println("请输入体重(Kg):");
double weight = scan.nextDouble();
System.out.println("请输入身高(m):");
double height = scan.nextDouble();
//2.计算健康值
double health = weight/(height*height);
//3.判断区间
if(health>15 && health<=20){
System.out.println("医生说:\"偏瘦,多喝酒、多吃垃圾食品、多熬夜\"");
}else if(health>20 && health<=25){
System.out.println("医生说:\"健康,请保持现有状态\"");
}else if(health>25 && health<=30){
System.out.println("医生说:\"偏胖,多做运动,嘿嘿嘿~~~\"");
}else{
System.out.println("医生说:\"数据异常,请到医院进行详细检查\"");
}
}
}
案例二:通过键盘录入学生成绩
如果在90-100之间,则打印“A”,
否则如果在80-90之间,则打印“B”,
否则如果在70-80之间,则打印“C”
否则如果在60-70之间,则打印“D”
否则如果在0-60之间,则打印“E”
否则打印“成绩异常”
import java.util.Scanner;
public class 文件名{
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
System.out.println("请输入成绩:");
double score = scan.nextDouble();
if(score>=90 && score<=100){
System.out.println("A");
}else if(score>=80 && score<90){
System.out.println("B");
}else if(score>=70 && score<80){
System.out.println("C");
}else if(score>=60 && score<70){
System.out.println("D");
}else if(score>=0 && score<60){
System.out.println("E");
}else{
System.out.println("成绩异常");
}
}
}
多重if分支:在多选一的情况下使用
行运动会,百米赛跑跑入16秒内的学生有资格进决赛, 根据性别分别进入男子组和女子组。
import java.util.Scanner;
public class 文件名{
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
System.out.println("请输入成绩:");
double score = scan.nextDouble();
if(score > 0 && score < 16){
System.out.println("请输入性别:");
String sex = scan.next();
if(sex.equals("男")){//判断sex和"男"这两个字符串是否相同的方法
System.out.println("恭喜进入到男子组决赛");
}else if(sex.equals("女")){//判断sex和"女"这两个字符串是否相同的方法
System.out.println("恭喜进入到女子组决赛");
}else{
System.out.println("性别异常");
}
}else if(score > 16){
System.out.println("谢谢参与~~~");
}else{//输入负数的情况
System.out.println("成绩异常");
}
}
}
if可以无限层嵌套
if(){}要么进入、要么不进入
if分支可以判断区间
if分支可以判断复杂条件
if...else...:二选一的情况下使用
多重if分支:在多选一的情况下使用
if可以无限层嵌套
*/
含义:具有特殊意义的字符
\" - 表示一个双引号字符
\' - 表示一个单引号字符
\\ - 表示一个斜杠字符
\n - 表示换行
\t - 表示水平制表
public class 文件名{
public static void main(String[] args){
System.out.println("她说:\"你胖吗?\"");
System.out.println("我说:\'不胖不胖\'");
System.out.println("她说:\\真嫌弃\\");
System.out.print("用心去学习\n");
System.out.print("做努力的自己");
gSystem.out.println("3*2=6\t3*3=9\t3*4=12\t3*5=15");
System.out.println("4*2=8\t4*3=12\t4*4=16\t4*5=20");
}
}
含义:在程序执行过程中不可发生改变的量
分类:
1.数字字面量:程序中出现的数字
整数数字默认:int
小数数字默认:double
2.字面值常量:使用双引号括起来的内容
3.使用final修饰的变量
注意:不能被重新赋值 final int i = 100; System.out.println(i);