【安利Java零基础】心灵手巧—灵活使用运算符(三)

简介: 【安利Java零基础】心灵手巧—灵活使用运算符

🌳🌳 三元运算符

🔻 三元运算符即三个操作数参与计算的运算符。


格式:

(布尔表达式)?结果1:结果2;

结果1或结果2可以是任何数据类型(基本数据类型,引用数据类型)

运算规则:

根据布尔表达式的值返回不同的结果:

布尔表达式为true, 返回 结果1

布尔表达式为false, 返回 结果2

      int i = 10;
    int j = 20;
    System.out.println(i>j?"i的值大":"j的值大");
    //打印结果为j的值大
package com.czxy.demo1;
public class Demo1 {
    /**
     * 三元运算符
     *      (布尔表达式)?结果1:结果2;
     *
     *      1、结果1和结果2永远不会同时执行的
     *      2、布尔表达式为true,运行结果1
     *         布尔表达式为false,运行结果2
     *      3、结果1和结果2 的值为任意类型
     * @param args
     */
    public static void main(String[] args) {
        System.out.println(1==1?"等于":"不等于");//等于
        System.out.println(1!=1?10.55:11.55);//11.55
    }
}

注:三元运算符的结果必须被使用,否则Java报错。

package com.czxy.demo1;
public class Demo2 {
    /**
     * 三元运算符
     *      三元运算符的结果必须被使用,否则会报错
     * @param args
     */
    public static void main(String[] args) {
        //1、结果被使用,无报错
        System.out.println(1==1?"等于":"不等于");
        boolean f1 = 1==1?true:false;//允许
        //2、结果未被使用,就会报错
//        1==1?true:false;
    }
}

🎃🎃小试牛刀,检验一下自己吧

1、写一个程序判断1到10的数是奇数还是偶数,打印出如下效果:


       1 是奇数


       2     是偶数


       ……


       9     是奇数


       10    是偶数


注:可以通过 模%运算取余来判断是奇数还是偶数。


💦 方法一:直接取余判断输出结果  

/**
 *     1、写一个程序判断1到10的数是奇数还是偶数,打印出如下效果:
 *           1    是奇数
 *           2     是偶数
 *           ……
 *           9     是奇数
 *           10    是偶数
 * @param args
 */
public static void main(String[] args) {
    //1、定义一个变量,保存1~10的数
    int num = 1;
    //2、依次进行判断奇偶数,并展示结果
    System.out.println(num+"\t是"+((num++%2==0)?"偶数":"奇数"));
    System.out.println(num+"\t是"+((num++%2==0)?"偶数":"奇数"));
    System.out.println(num+"\t是"+((num++%2==0)?"偶数":"奇数"));
    System.out.println(num+"\t是"+((num++%2==0)?"偶数":"奇数"));
    System.out.println(num+"\t是"+((num++%2==0)?"偶数":"奇数"));
    System.out.println(num+"\t是"+((num++%2==0)?"偶数":"奇数"));
    System.out.println(num+"\t是"+((num++%2==0)?"偶数":"奇数"));
    System.out.println(num+"\t是"+((num++%2==0)?"偶数":"奇数"));
    System.out.println(num+"\t是"+((num++%2==0)?"偶数":"奇数"));
    System.out.println(num+"\t是"+((num++%2==0)?"偶数":"奇数"));
}

💦 方法二:循环取余判断输出。

package com.czxy.demo1;
public class Demo3_2 {
    /**
     *     1、写一个程序判断1到1000的数是奇数还是偶数,打印出如下效果:
     *
     *      引入for
     *          用来进行重复代码书写。  循环
     * @param args
     */
    public static void main(String[] args) {
        //1、定义一个变量,保存1~10的数
        int num = 1;
        //2、依次进行判断奇偶数,并展示结果
        for (int i = 1; i <=1000 ; i++) {
            System.out.println(num+"\t是"+((num++%2==0)?"偶数":"奇数"));
        }
    }
}

2ba343160a7c468e9451090e869ea59e.png

2、写程序比较两个整数 22和99的大小,并且将最大值和最小值分别保存不同的变量中。

展示效果:

530a2d3f35df44fd8e24a1973b21b6b9.png

public static void main(String[] args) {
    //1、定义变量,max,min
    int max,min;
    //2、为max和min赋值
    max = 99>22?99:22;//如果99比22大,保存99为最大值。
    min = 99>22?22:99;//如果99比22大,保存22为最小值。
    //3、展示控制台
    System.out.println("最大值为:"+max);
    System.out.println("最小值为:"+min);
}

🎃🎃 注意事项

 1、 常量和变量都可以参与运算。


 2、运算符一般只操作基本数据类型,不操作引用数据类型(String除外)


0c21d6a58b13404d8f5e2ec53ac1d2f0.gif


🌳🌳运算符的优先级


在日常开发中,一行代码中很可能 出现多个不同的运算符。


比如,当赋值运算符 = 与 + 运算符都作用在一个变量上时,先计算加法,再计算赋值。


       如:

        int i,j; 
    i = 10;
    //对i这个变量有两个运算符操作,分别为=与+。
    j = i + 20;
    System.out.println(j);
    //最终打印结果为30。说明先计算+后计算=。

优先级:每个运算符都有一个顺序等级,来决定哪个运算符更为优先执行。


💚 运算符运算的先后顺序,数字越小,优先级越高,计算顺序越靠前。例如:先做加减,后做赋值----int a=5+1;

❤️优先级相同的情况下,按照从左到右的顺序依次运算。例如:int a=5+1-1; 因为加和减优先级相同,就从左到右顺序执行。

❄️❄️ 优先级规则表:

image.png

image.png

注(这里是个小技巧哦!):如果分不清优先级想让谁先运行,就加 括号( )


因为优先级规则表并不方便开发中的程序员随时使用,

所以开发中我们通常使用小括号 ( ) 来改变运算符优先级,使得程序按照程序员的预想来执行。

1117577d87c649dda264de6b60f88146.png


嘿!朋友,运算符的运用你学会了吗?讲解中有例题,赶紧试试检验检验自己吧!


相关文章
|
3月前
|
Java
Java运算符
Java运算符
54 12
|
2月前
|
算法 Java 测试技术
🌟Java 零基础 | 详解 单目运算符
【10月更文挑战第14天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
55 7
|
2月前
|
Java 测试技术 开发者
🌟Java 零基础 | 深入理解三目运算符
【10月更文挑战第13天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
67 3
|
2月前
|
Java 测试技术 开发者
🌟Java零基础-Lambda运算符详解 🌟
【10月更文挑战第12天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
28 1
|
2月前
|
Java
JAVA易错点详解(数据类型转换、字符串与运算符)
JAVA易错点详解(数据类型转换、字符串与运算符)
61 4
|
2月前
|
安全 Java 测试技术
🌟 Java 零基础 | 详解 instanceof 运算符
【10月更文挑战第1天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
55 1
|
2月前
|
存储 Java C语言
【一步一步了解Java系列】:了解Java与C语言的运算符的“大同小异”
【一步一步了解Java系列】:了解Java与C语言的运算符的“大同小异”
46 3
|
Java 编译器 程序员
Java编程思想第五版精粹(四)-运算符
Java编程思想第五版精粹(四)-运算符
116 0
|
安全 Java 编译器
Java编程思想第五版(On Java8)(四)-运算符(下)
Java编程思想第五版(On Java8)(四)-运算符(下)
125 0
|
缓存 移动开发 Java
Java编程思想第五版(On Java8)(四)-运算符(中)
Java编程思想第五版(On Java8)(四)-运算符(中)
131 0