if条件语句
1.if()…else的多层叠加
格式
if(判断语句){
执行if语句1
}else{
执行esle语句1}
if(判断语句){
执行if语句2
}else{
执行esle语句2}
流程图
代码
public static void main(String[] args) {
// TODO Auto-generated method stub
BMI(-75,1.72);
}
public static void BMI(double weight,double height) {
// TODO Auto-generated method stub
double bmi = 0; //BMI值
System.out.println("经过计算您的相关情况如下:");
bmi=weight/(height*height);
if(bmi<0){
System.out.println("您的输入有误,请注意体重为kg,身高为m");
}else {System.out.println("1");}
if (bmi<=18.5) {
System.out.println("您的BMI值为:"+bmi+";\n"+"您的体重过轻需要加强营养;");
}else {System.out.println("2");}
if (bmi<=24) {
System.out.println("您的BMI值为:"+bmi+";\n"+"您的体重十分标准;");
}else {System.out.println("3");}
if(bmi>=28) {
System.out.println("您的BMI值为:"+bmi+";\n"+"您的体重已经超重请注意饮食;");
}else {System.out.println("4");}
}
console
经过计算您的相关情况如下:
您的输入有误,请注意体重为kg,身高为m
您的BMI值为:-25.351541373715524;
您的体重过轻需要加强营养;
您的BMI值为:-25.351541373715524;
您的体重十分标准;
4
结论
if…else语句中判断语句的值为布尔值(TRUE or FALSE)
执行语句会根据判断结果执行TRUE或FALSE语句,执行TRUE语句将会继续执行下一判断条件,直到执行语句为else不再进行判断。
2.if()…else if()…else语句
格式
if(判断语句){
执行语句}
else if(判断语句2){
执行语句2}
else if(判断语句n){
执行语句n}else{
执行else语句}
流程图
代码
public static void main(String[] args) {
// TODO Auto-generated method stub
TrueBMI(76,1.73);
}
public static void TrueBMI(double weight,double height) {
System.out.println("计算您所提供的数据得出以下值:");
double bmi;//初始化bmi值
double LowHealth;
double HighHealth;
LowHealth=18.5*(height*height);//计算BMI健康体重最低值
HighHealth=24*(height*height);
bmi=weight/(height*height);//计算BMI值
if (bmi<0) {
System.out.println("您输入的值有误");
}else if (bmi<18.5) {
System.out.println("您的BMI值为:"+bmi+";\n"+"您的体重过轻需要加强营养,增加体重至"+LowHealth+"公斤"+"-"+HighHealth+"公斤!");
} else if(bmi<=24){
System.out.println("您的BMI值为:"+bmi+";\n"+"您的体重十分标准;");
} else if(bmi<27){
System.out.println("您的BMI值为:"+bmi+";\n"+"您的体重已经超重请注意饮食,请控制体重至"+LowHealth+"公斤"+"-"+HighHealth+"公斤!");
}else {
System.out.println("您的BMI值为:"+bmi+";\n"+"为了您的生命安全,请减肥至"+LowHealth+"公斤"+"-"+HighHealth+"公斤!");
}
}
console
计算您所提供的数据得出以下值:
您的BMI值为:25.393431120318084;
您的体重已经超重请注意饮食,请控制体重至55.36865公斤-71.8296公斤!
结论
elseif语句中判断条件结果为FALSE进行下一判断条件不执行语句,当判断条件结果为TRUE时执行语句不再进行判断。