二. Java“速学通”之基础

前言

       这是课程的第二篇,基础篇结束,下一篇开始语句相关的内容(if,for,while,switch),所以命名为语句,以防有新读者所以我简述一下第一篇的前言。

        这个Java急速学习课程适合有一定编程基础的人。它通过实际的代码例子来教Java,减少了理论讲解,使学习过程更直观,帮助你更快地掌握Java的核心技能。课程内容经过优化,力求简洁明了。同时,课程鼓励大家交流心得,提出更好的解决方案,以此来不断改进课程内容。


包含知识点

1. 自增自减运算符 

        ++ 和 --:前置和后置自增自减运算符的使用及区别。

        后置自增 (a++):先使用当前值,再加 1。

        前置自增 (++a):先加 1,再使用新值。  

2. 扩展赋值运算符

        +=, -=, *=, /=, %=:扩展赋值运算符及其自带的强制类型转换功能。  

        示例:a += 5 等价于 a = a + 5。

        类型转换:如 byte a1 = 10; a1 += 20; 会自动进行类型转换。  

3. 强制类型转换

        在扩展赋值运算符中,自动进行类型转换。

        示例:byte a1 = 10; byte a2 = 20; a1 += a2; 结果为 30。  

4. 三元运算符

        用于条件判断并选择一个值。

        示例:int max = a > b ? a : b; 找出较大值。  

5. 方法重载的一个小示例(复习)

        print3(int a, int b) 和 print3(int a, int b, int c)。  

6. 短路逻辑运算符与非短路逻辑运算符

         && 和 ||:短路逻辑运算符,仅计算必要部分。

        示例:a > 1000 && ++b > 1:左边为假则右边不执行。

        & 和 |:非短路逻辑运算符,始终计算两边。

        示例:a > 1000 & ++b > 1:即使左边为假,右边也执行。  

7. 其他逻辑运算符 

         !:取反操作。  ^:异或操作,相同为 false,不同为 true。


具体代码

package basic_0;

public class BasicZc2 {
    public static void main(String[] args) {
        // 理解自增自减运算符
        print0(10);  //a=10
        System.out.println("============自增自减===========");
        print1(10);  //a=10
        System.out.println("==========强制类型转换==========");
        print2();
        System.out.println("===========三元运算符===========");
        print3(10, 20);
        print3(10, 20, 30);//方法重载
        System.out.println("===========短路逻辑符号==========");
        print4(); // 判断&& || 与 & |的区别

    }

    public static void print0(int a) { //a = 10
        a++;  ++a; // a = a + 1;
        System.out.println(a); // 12

        a--;  --a; // a = a - 1;
        System.out.println(a); // 10
    }

    public static void print1(int a) {// 自增和自减放在变量前后的区别
        int b = a++; // 先用后加
        System.out.println("先用后加");
        System.out.println(a); // 11
        System.out.println(b); // 10

        int c = ++a; // 先加后用
        System.out.println("先加后用");
        System.out.println(a); // 12
        System.out.println(c); // 12
    }

    // 演示其他几个扩展的赋值运算符。
    public static void print2() {
        //扩展赋值运算符自带强制类型转换
        System.out.println("运算符自带强制类型转换示例:");
        int a = 10;
        a += 5; // 等价于 a = (a的类型)(a + 5);
        System.out.println(a); // 15

        byte a1 = 10;
        byte a2 = 20;
        a1 += a2; // 等价于 a1 = (byte) (a1 + a2);
        System.out.println(a1); // 30

        int b = 10;
        b *= 5; // 等价于 b = (b的类型)(b * 5);
        System.out.println(b); // 50

        int c = 10;
        c /= 5; // 等价于 c = (c的类型)(c / 5);
        System.out.println(c); // 2

        int d = 10;
        d %= 5; // 等价于 d = (d的类型)(d % 5);
        System.out.println(d); // 0

        System.out.println("表达式的自动类型提升示例:");
        //byte short char运算时会直接提升成int运算
        // 表达式的最终结果类型是有最高类型决定的
    }

    public static void print3(int a, int b) {// 三元运算符,无返回值
        int max = a > b ? a : b;
        System.out.println("较大值:" + max);
    }
    //求三个整数的较大值返回,嵌套
    public static int print3(int a, int b, int c) {//求三个整数的较大值返回,嵌套,有返回值
        // 三元运算符的嵌套
        int max = a > b ? (a > c ? a : c) : (b > c ? b : c);
        System.out.println("较大值:" + max);
        return max;
    }

    public static void print4() {// 判断&& ||(短路逻辑运算符) 与 & |的区别
        // &且    |或
        int a = 111;
        int b = 2;
        // System.out.println(a > 1000 && ++b > 1); // false  && 发现左边条件为false右边直接不执行
        System.out.println(a > 1000 & ++b > 1);  // false  & 即便发现左边条件为false右边依然执行
        System.out.println(b); // 3

        int i = 10;
        int j = 20;
        // System.out.println(i > 6 || ++j > 1); // true  || 发现左边条件为true右边直接不执行
        System.out.println(i > 6 | ++j > 1); // true & 即便发现左边条件为true右边依然执行
        System.out.println(j);
        // ! 非,取反
        System.out.println(!true); // false
        // ^ 异或,相同条件结果为false,不同为true
        System.out.println(false ^ false); // false
        System.out.println(true ^ true); // false
        System.out.println(true ^ false); // true
        System.out.println(false ^ true); // true
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值