Java基础补习---Day 03

一、运算符

  1. 算术运算符

十、 — 、 * 、 / 、 %(取余)

  1. 赋值运算符

基本赋值运算符 :=

扩展的赋值运算符: +=、 -=、 *=、 /=、 %=

案例演示:

public static void main(String[] args) {
        int a = 12;
        int b = 12;
        a = a-2;
        b -= 2;
        System.out.println("a"+a);
        System.out.println("b"+b);
    }
  1. 比较运算符
  1. 逻辑运算符:用于处理代码中逻辑部分的

案例演示:

public static void main(String[] args) {
        int num = 10;
        int num2 = 20;
        System.out.println((num<num2) & (num2/num>0));
        System.out.println((num<num2) | (num2/num>0));
        System.out.println(!true);
        System.out.println(false ^ false);
    }
------------------------------------------------------------------

public static void main(String[] args) {
        int a = 3;
        int b = 4;
        //    System.out.println(a++ ==3);
        //    System.out.println((a++ ==3) && (--b == 3));
        System.out.println((++a ==3) || (--b == 4));
        System.out.println("a:"+a+"b:"+b);
    }
  1. 三目运算符

也称为三元运算符

格式 : 数据类型 变量名 = 布尔类型表达式? 表达式1:表达式2

  1. 位运算符(了解作为扩展)

待补充

二、键盘录入

步骤 :

(1)导包 【import 关键字 自动导包 】

(2) 创建键盘录入对象 Scanner sc = new Scanner(System.in)

(3)接收录入的数据

/*练习题:
键盘录入两个数据,并对这两个数据求和,输出其结果
键盘录入两个数据,获取这两个数据中的最大值
键盘录入三个数据,获取这三个数据中的最大值
键盘录入两个数据,比较这两个数据是否相等
*/
public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        //键盘录入两个数字,并对这两个数字求和,输出结果
        System.out.print("请输入第一个数:");
        int num = sc.nextInt();
        System.out.print("请输入第二个数:");
        int num2 = sc.nextInt();
        int sum = num+num2;
        System.out.println("两个数字的和为:"+ sum);
        //键盘录入两个数字,输出最大值、最小值
        int max = num>num2 ? num:num2;
        int min = num<num2 ? num:num2;
        System.out.println("两个数字的最大值为:"+ max);
        System.out.println("两个数字的最小值为:"+ min);
        //键盘录入三个数字,输出最大值、最小值
        System.out.print("请输入第三个数:");
        int num3 = sc.nextInt();
        int max1 = num3>max ? num3:max;
        int min1 = num3<min ? num3:min;
        System.out.println("三个数字的最大值为:"+ max1);
        System.out.println("三个数字的最小值为:"+ min1);
        //键盘录入两个数字,比较两个数字是否相等
        System.out.println("前两个数字是否相等:"+(num==num2));
    }

三、流程控制

  1. 顺序结构:就是程序依次执行
public static void main(String[] args) {
        //顺序结构
        System.out.println("56789");
        System.out.println('n');
        System.out.println("小森");
    }
  1. 选择结构

含义 :也被称为分支结构。选择结构有特定的语法规则,代码要执行具体的逻辑运算进行判断,逻辑

运算的结果有两个,所以产生选择,按照不同的选择执行不同的代码。Java语言提供了两种选择结构语句:if语句和switch语句

if语句

if语句第一种格式(单分支):
if (关系表达式) {
    语句体;
}
关系表达式必须是boolean类型的表达式,关系表达式结果为true的时候执行语句体

----------------------------------------------------------------------
if语句第二种格式(双分支):
if (关系表达式) {
    语句体1;
}else{
    语句体2;
}
关系表达式必须是boolean类型的表达式,关系表达式结果为true的时候执行语句体,为false的时候
执行语句体2

----------------------------------------------------------------------
if语句第三种格式(多分支):
if (关系表达式1) {
    语句体1;
}else if(关系表达式2){
    语句体2;
}else if(关系表达式...){
    语句体...;
}else {
    语句体n+1;
}
关系表达式必须是boolean类型的表达式,关系表达式1结果为true的时候执行语句体1,关系表达式2结
果为true的时候执行语句体2...所有的关系表达式结果都不为true的时候执行语句体n+1.

案例演示:

//键盘录入一个年龄,判断是少年(14)、青年(40)、中年(65)还是老年(130)
public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入年龄(1~130):");
        int age = sc.nextInt();
        if (age>0 && age<=14){
            System.out.println(age+"岁是一个少年");
        }else if(age>14 && age<=40){
            System.out.println(age+"岁是一个青年人");
        }else if(age>40 && age<=65){
            System.out.println(age+"岁是一个中年人");
        }else if(age>65 && age<=130){
            System.out.println(age+"岁是一个老年人");
        }else {
            System.out.println("你输入的年龄有误,请重新输入");
        }
    }

if语句注意事项

if语句,语句体只有一句的时候 {} 可以省略

案例演示:

public static void main(String[] args) {
        int age = 18;
//        if (age>=18){
//            System.out.println("成年");
//            System.out.println("成年");
//            System.out.println("成年");
//        }
//        if (age>=18)
//            System.out.println("成年");
//            System.out.println("成年");
//            System.out.println("成年");

        if (age>=17)
            System.out.println("成年");
        else
            System.out.println("未成年");
    }

switch语句(switch 关键字 开关

switch语句格式:
switch(表达式) {
    case 值1:
        语句体;
        break;
    case 值2:
        语句体;
        break;
        ...
    default:
        语句体n+1;
        break;
}
格式解释:
switch表示这是switch语句,表达式的取值:byte,short,int,char(JDK5以后可以是枚举,JDK7以
后可以是String)
case后面跟的是要和表达式进行比较的值
语句体部分可以是一条或多条语句
break表示中断,结束的意思,可以结束switch语句
default语句表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。

案例演示:

//键盘录入一个数,判断是周几
public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入1~7");
        int num = sc.nextInt();
        switch(num){
            case 1:
                System.out.println("今天周一");
                break;
            case 2:
                System.out.println("今天周二");
                break;
            case 3:
                System.out.println("今天周三");
                break;
            case 4:
                System.out.println("今天周四");
                break;
            case 5:
                System.out.println("今天周五");
                break;
            case 6:
                System.out.println("今天周六");
                break;
            case 7:
                System.out.println("今天周日");
                break;
            default:
                System.out.println("输错了");
                break;
        }
    }

break可以省略,但不建议,特殊情况可以使用

案例演示:

//案例:输入一个月份,判断是什么季节
public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入一个月份:");
        int jj = sc.nextInt();
        switch (jj){
            case 12:
            case 1:
            case 2:
                System.out.println(jj+"月是冬季");
                break;
            case 3:
            case 4:
            case 5:
                System.out.println(jj+"月是春季");
                break;
            case 6:
            case 7:
            case 8:
                System.out.println(jj+"月是夏季");
                break;
            case 9:
            case 10:
            case 11:
                System.out.println(jj+"月是秋季");
                break;
            default:
                System.out.println("请输入正确月份");
                break;
        }
    }

比较一下有什么区别,两次输出结果可以打在评论区探讨

public static void main(String[] args) {
        int a = 1;
        int b = 2;
        switch (a){
            default:
                b++;
            case 2:
                b++;
            case 3:
                b++;
        }
        System.out.println("b"+b);
    }

----------------------------------------------------------
public static void main(String[] args) {
        int a = 1;
        int b = 2;
        switch (a){
            default:
                b++;
                break;
            case 2:
                b++;
            case 3:
                b++;
        }
        System.out.println("b"+b);
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值