语言基础3 条件

目录

         1..if 结构:1条路

2.if…else 结构:2条路

3.if…else if结构:多条路

4.switch…case结构:多条路


1..if 结构:1条路

 if结构:1条路
        1)语法
        if(boolean 关系逻辑运算符){
           语句块----基于条件执行的语句
        }
        2)执行过程:
           判断boolean的值:
           若为true,则执行语句块(整个结束)
           若为flase,则到if不走了
//1)偶数的判断:
int num=6;//带数(6,5)
if(num%2==0){
    System.out.println(num+"是偶数");
}//{}号中只有一行代码 可以取消{} 但最好不要
System.out.println("继续执行...");

//2.满足500打8折
double price=501;
if (price>=500){ //关系运算符
    //price=price*0.8;
    price*=0.8;
}
System.out.println("最终结算金额为:"+price);

//3.判断年龄是否在18到50之间(包含),若在范围内输出:满足条件
int age=8;//年龄 带数(38,8,88)
if (age>=18 &&age<=50){//逻辑运算符
    System.out.println("满足条件");
}
System.out.println("继续执行...");

 2.if…else 结构:2条路

1.语法:
  if(boolean结果){
     语句块1
  }else{
     语句块2
  }
2.执行过程:
    判断boolean的值:
    若为true,则执行语句块1(整个结束);
    若为false,则执行语句块2(整个结束);
3.说明:
   语句块1和语句块2,必走其中之一------适合解决2选一问题
//1)偶数,奇数的判断;
  int num =5;//代数(6,5)
  if(num%2==0){
        System.out.println(num+"是偶数");
    }else{
        System.out.println(num+"是奇数");
    }
    System.out.println("继续执行...");

//2)满500打八折,不满500打九折;
    double price=300;//代数(300,501)
    if (price>=500){
        price*=0.8;
    }else{
        price*=0.9;
    }
    System.out.println("最终的价格是"+price);
    //3)判断年龄是否在18到50之间(包含),若在范围内输出:满足条件
    int age=100;//代数(38,8,88)
    if (age>=18&&age<=50){
        System.out.println("满足条件");
    }else{
        System.out.println("不满足条件");

    //判断平年闰年
    int year=2007;
    if(year%4==0&&year%100!=0||year%400==0){
    System.out.println(year+"年是闰年");
    }else{
    System.out.println(year+"年是平年");

3.if…else if结构:多条路

if...else if结构: 多条路
  1)语法:
      if(boolean-1){
        语句块1
      }else if(boolean-2){
        语句块2
      }else if(boolean-3){
        语句块3
      }else{
        语句块4
      }
  2)执行过程:
      判断boolean-1,若为true则执行语句块1(结束),若为false则
      再判断boolean-2,若为true则执行语句块2(结束),若为false则
      再判断boolean-3,若为true则执行语句块3(结束),若为false则执行语句块4(结束)
  3)说明:
      语句块1/2/3/4,必走其中之一-----------多选1

java在分支中赋值,必须保证每条路必须有值,解决方案是前面就赋值,后面更改赋值

 使用if ..elseif语句将成绩分等级:

​

package day04;
import java.util.Scanner;
public class ScoreLevel {
    public static void main(String[] args) {
        Scanner scan=new Scanner(System.in);//新建一个名为scan的扫描器

        System.out.println("请输入成绩");
        double score =scan.nextDouble();//将下一个扫描的double数据赋值给score
        System.out.println("成绩为"+score);

        //我国的成绩大于0小于100 将成绩分层嵌套在if内
        /*
         if(score>=0 && score<=100){
            if(score>=90){
                System.out.println("A-优秀");
            }else if(score>=80 ){//不需要写并且小于90
                System.out.println("B-良好");
            }else if(score>=60 ){
                System.out.println("C-中等");
            }else {
                System.out.println("D-不及格");
            }
        }else{
            System.out.println("成绩不合法");
        }
        */
        if (score<0 || score >100){
            System.out.println("成绩不合法");
        }else if(score>=90){//进行到第二步必然合法
            System.out.println("A-优秀");
        }else if(score>=80 ){//不需要写并且小于90
            System.out.println("B-良好");
        }else if(score>=60 ){
            System.out.println("C-中等");
        }else {
            System.out.println("D-不及格");
        }

    }
}
​

4.switch…case结构:多条路

        优点:效率高、结构清晰

        缺点:只能对整数判断相等

        break:跳出switch

注意:switch能作用在byte、short、char、int、String、枚举

        switch(整数){

         case 1:

             break;

        case  2:

             break;

       default:

              ...;

}

package day04;
import java.util.Scanner;
public class CommmandBySwitch {
    public static void main(String[] args) {
        Scanner scan =new Scanner(System.in);
        System.out.println("请输入功能1.存款 2.取款 3.查询余额 4.退卡");
        int command =scan.nextInt();
        //atm机操作
        switch (command){
            case 1:
                System.out.println("");
                break;
            case 2:
                System.out.println("取款操作");
                break;
            case 3:
                System.out.println("查询余额操作");
                break;
            case 4:
                System.out.println("退卡");
                break;
            default:
                System.out.println("操作错误");
        }
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值