Java教程

Java--运算符

本文主要是介绍Java--运算符,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1. 运算符


1.1 二元运算符


1.1.1 二元算数运算符

在这里插入图片描述
两个操作数,来看看我们小时候的数学运算;

示例:

    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        System.out.println(a + " + " + b + " = " + (a + b));
        System.out.println(a + " - " + b + " = " + (a - b));
        System.out.println(a + " * " + b + " = " + (a * b));
        System.out.println(a + " / " + b + " = " + (b / a));
    }

在这里插入图片描述

整数运算:

  • 如果两个操作数有一个为long, 则结果也为long
  • 没有long时,结果为int。即使操作数全为shot,byte,结果也是int

示例:

    public static void main(String[] args) {
        long a = 1231321311231231L;
        int b = 1213;
        short c = 10;
        byte d = 8;
        System.out.println((a + b + c + d)); //long类型
        System.out.println((b + c + d));//int类型
        System.out.println((c + d));//int类型 123456789
    }

浮点运算:

  • 如果两个操作数有一个为double, 则结果为double.
  • 只有两个操作数都是float, 则结果才为float.

示例在这里插入图片描述


1.1.2 关系运算符

返回布尔值

在这里插入图片描述


1.2 取模运算

就是我们小学的取余; 5%3 余 2

其操作数可以为浮点数,一般使用整数。如:

 System.out.println(5.9 % 3.9);// 2.0000000000000004

要点:

  • 正数%正数=正数;
  • 负数%负数=负数;
  • 负数%正数=负数;
  • 正数%负数=正数;

示例:

    public static void main(String[] args) {
        System.out.println("正数%正数");
        System.out.println(1 % 2);
        System.out.println(2 % 2);
        System.out.println(3 % 2);

        System.out.println("负数%负数 ");
        System.out.println(-1 % -2);
        System.out.println(-2 % -2);
        System.out.println(-3 % -2);

        System.out.println("负数%正数 ");
        System.out.println(-1 % 2);
        System.out.println(-2 % 2);
        System.out.println(-3 % 2);

        System.out.println("正数%负数 ");
        System.out.println(1 % -2);
        System.out.println(2 % -2);
        System.out.println(3 % -2);
    }

在这里插入图片描述


1.3 一元运算符

自增自减运算符详解:


1.4 逻辑运算符

逻辑与:&&和&,逻辑或:||和|,逻辑非:!。
在这里插入图片描述

说明:

  • 逻辑与和逻辑或采用短路的方式。从左到右计算,如果确定值则不会再计算下去。在两个操作数都为true时,结果才为true,但是当得到第一个操作为false时,其结果就必定是false,这时候就不会再判断第二个操作了。
  • 逻辑与只要有一个为false, 则直接返回false.
  • 逻辑或只要有一个为true, 则直接返回true;

示例1:

    public static void main(String[] args) {
        int a = 5;
        boolean b = (a < 4) && (a++ < 10);
        System.out.println("使用短路逻辑运算符的结果为" + b);
        System.out.println("a的结果为" + a);
    }

在这里插入图片描述
解析: 该程序使用到了短路逻辑运算符(&&),首先判断 a<4 的结果为 false,则 b 的结果必定是 false, 所以不再执行第二个操作 a++<10 的判断,所以 a 的值为 5。

示例2:

    public static void main(String[] args) {
        boolean a = true;
        boolean b = false;
        System.out.println("a && b = " + (a && b));
        System.out.println("a || b = " + (a || b));
        System.out.println("!(a && b) = " + !(a && b));
    }

在这里插入图片描述


1.5 扩展运算符

在这里插入图片描述

    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        // a = a + b
        a += b;
        System.out.println("a = " + a);
    }

在这里插入图片描述


1.6 字符串连接符

“+” 运算符两侧的操作数中只要有一个是字符串(String)类型,系统会自动将另一个操作数转换为字符串然后再进行连接。

    public static void main(String[] args) {
        String str = "Like ";
        int num = 520;
        System.out.println((str + num) instanceof String);// true
    }

1.7 三目条件运算符

三目条件运算符,语法格式:

在这里插入图片描述

【演示】

    public static void main(String[] args) {
        int score = 80;
        String type = score < 60 ? "不及格" : "及格";
        System.out.println("type= " + type);
    }

在这里插入图片描述
以利用三元运算符做到更加精简代码


1.8 运算符优先级

下表中具有最高优先级的运算符在的表的最上面,最低优先级的在表的底部。
在这里插入图片描述大家不需要去刻意的记住,表达式里面优先使用小括号来组织!!方便理解和使用,不建议写非常冗余的代码运算!

    public static void main(String[] args) {
        // 不建议向下面这样写
        boolean flag = 1 < 4 * 5 && 122 > 3 || 'q' + 3 < 5;
        System.out.println(flag);
    }


这篇关于Java--运算符的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!