java基础——常见运算符

java基础——常见运算符

1. 算术运算符
算术运算符用在数学表达式中,它们的作用和在数学中的作用一样。
(1)+ 加法 - 相加运算符两侧的值
(2)- 减法 - 左操作数减去右操作数
(3)* 乘法 - 相乘操作符两侧的值
(4)/ 除法 - 左操作数除以右操作数
(5)% 取余 - 左操作数除以右操作数的余数
(6)++ 自增: 操作数的值增加1
(7)-- 自减: 操作数的值减少1

public class Test {
  public static void main(String[] args) {
     int a = 1;
     int b = 2;
     int c = 3;
     int d = 4;
     System.out.println("a + b = " + (a + b) );
     System.out.println("a - b = " + (a - b) );
     System.out.println("a * b = " + (a * b) );
     System.out.println("b / a = " + (b / a) );
     System.out.println("b % a = " + (b % a) );
     System.out.println("c % a = " + (c % a) );
     System.out.println("a++   = " +  (a++) );
     System.out.println("a--   = " +  (a--) );
     System.out.println("d++   = " +  (d++) );
     System.out.println("++d   = " +  (++d) );
  }
}

运行结果如下
在这里插入图片描述

自增(++)自减(–)运算符是一种特殊的算术运算符,在算术运算符中需要两个操作数来进行运算,而自增自减运算符是一个操作数。前加加和后加加的优先级别不同引起的!!!!!,前加加的优先级别非常高,仅次于括号,后加加的优先级别非常非常低,甚至比赋值符都低
例如:

public class Test01{
    public static void main(String[] args){
        int a = 3;
        int b = ++a;
        int c = 3;
        int d = --c;
        System.out.println("自增运算后等于"+b);
        System.out.println("自减运算后等于"+d);
    }
}

在这里插入图片描述

2. 关系运算符
== 检查如果两个操作数的值是否相等,如果相等则条件为真。
!= 检查如果两个操作数的值是否相等,如果值不相等则条件为真。 > 检查左操作数的值是否大于右操作数的值,如果是那么条件为真。 。< 检查左操作数的值是否小于右操作数的值,如果是那么条件为真。 >= 检查左操作数的值是否大于或等于右操作数的值,如果是那么条件为真。 <= 检查左操作数的值是否小于或等于右操作数的值,如果是那么条件为真。
例如:

public class Test02 {
 
  public static void main(String[] args) {
     int a = 1;
     int b = 2;
     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 = " + (a < b) );
     System.out.println("b >= a = " + (b >= a) );
     System.out.println("b <= a = " + (b <= a) );
  }
}

在这里插入图片描述

3. 位运算符
Java定义了位运算符,应用于整数类型(int),长整型(long),短整型(short),字符型(char),和字节型(byte)等类型。位运算是计算机底层本质是二进制(半导体)运算。
如果相对应位都是1,则结果为1,否则为0 (A&B),得到12,即0000 1100
| 如果相对应位都是 0,则结果为 0,否则为 1 (A | B)得到61,即 0011 1101
^ 如果相对应位值相同,则结果为0,否则为1 (A ^ B)得到49,即 0011 0001
按位取反运算符翻转操作数的每一位,即0变成1,1变成0。 (〜A)得到-61,即1100 0011
<< 按位左移运算符。左操作数按位左移右操作数指定的位数。 A << 2得到240,即 1111 0000
. >> 按位右移运算符。左操作数按位右移右操作数指定的位数。 A >> 2得到15即 1111
. >>> 按位右移补零操作符。左操作数的值按右操作数指定的位数右移,移动得到的空位以零填充。
例如:

A = 0011 1100
B = 0000 1101
-----------------
A&B = 0000 1100
A | B = 0011 1101
A ^ B = 0011 0001
~A= 1100 0011

4. 逻辑运算符
连接多个条件的关联关系的
与 && & // 表示的是并且关系,全部为真则为真,否则为假
或 || | // 表示或者的关系,只要一者为真则为真,全部为假才为假
非 ! // 否定,取反
例如:

public class Test03 {
  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));
  }
}
![在这里插入图片描述](https://img-blog.csdnimg.cn/202107082132458.png)

5. 赋值运算符
(1)= 简单的赋值运算符,将右操作数的值赋给左侧操作数 C = A + B将把A + B得到的值赋给C
(2)+ = 加和赋值操作符,它把左操作数和右操作数相加赋值给左操作数 C + = A等价于C = C + A
(3)- = 减和赋值操作符,它把左操作数和右操作数相减赋值给左操作数 C - = A等价于C = C - A
(4)* = 乘和赋值操作符,它把左操作数和右操作数相乘赋值给左操作数 C * = A等价于C = C * A
(5)/ = 除和赋值操作符,它把左操作数和右操作数相除赋值给左操作数 C / = A,C 与 A 同类型时等价于 C = C / A
(6)(%)= 取模和赋值操作符,它把左操作数和右操作数取模后赋值给左操作数 C%= A等价于C = C%A
6. 三目运算符
表达式 ? 值1: 值2
int a = 10;
int b = 20;
int c = a > b ? 100 : 200;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值