JAVA SE《运算符》详解

🎆.算数运算符
基本四则运算符:加减乘除模(+ - * / %)
除法(/)
public class Test{
    public static void main(Sting[] args){
		//来来来 我们来用除法来求下面的代码。。
  	  System.out.println(5/2);//2
        System.out.println((float)5/2);//2.5
        System.out.println(5/(float)2);//2.5
        System.out.println((float)(5/2));//2.0
	}
}

我们再来看一下算数异常

public class Main{
    public static void main(Sting[] args){
     System.out.println(5/0);
        }
 }


在这里插入图片描述

🔷对于整数 a b取模了解一下
1.求整数商(/) c=a/b
2.取模(%)==a-c*b
public class Main{
    public static void main(Sting[] args){
        int a=10;
        int b=3;
     System.out.println(a%b);//==a-(a/b)*b==10-3*3=1
         System.out.println(a%-b);//==10-(-3)*(-3)=1
        System.out.println(-a%b);//==(-10)-(-3)*3=-1
         System.out.println(-a%-b);//==(-10)-3*(-3)=-1
        
        }
 }

🎆🎆.增量运算符 += -= *= %=
public class Main{
    public static void main(Sting[] args){
        short s1=10;
        //s1=(short)(s1+1);
        s1+=1;//这个+=可以帮我们进行强制类型转换
        System.out.println(s1);
        }
 }
🎆🎆🎆.自增和自减++a a++ --a a–
public class Main{
    public static void main(Sting[] args){
        int a = 1;
			a++; // 后置++ 表示给a的值加1,此时a的值为2
			System.out.println(a++); // 注意:后置++是先使用变量原来值,表示式结束时给变量+1,因此输出2
        
			System.out.println(a); // 输出3s
			++a; // 前置++ 表示给a的值加1
		System.out.println(++a); // 注意:前置++是先给变量+1,然后使用变量中的值,因此输出5
		System.out.println(a); // 输出5
		// --操作符给操作-1,与++含义类似
        
        }
 }

注意:混合使用时【前置】++先+1然后使用变量+1之后的值 ,【后置】先使用变量原来的值表达式结束时给变量。

🎆🎆🎆🎆.关系运算符

注意关系运算符主要有六个: == != < > <= >= ,其计算结果是 true 或者 false 。

public class Main{
    public static void main(Sting[] args){
        int x = 10;
		int y = 20;
	// 注意:在Java中 = 表示赋值,要与数学中的含义区分
	// 在Java中 == 表示相等
	System.out.println(x == y); // false
	System.out.println(x != y); // true
	System.out.println(x < y); // true
	System.out.println(x > y); // false
	System.out.println(x <= y); // true
	System.out.println(x >= y); // false

        }
 }
🎆🎆🎆🎆🎆.逻辑运算符

逻辑运算符主要有三个: && || ! ,运算结果都是 boolean类型。

**1.逻辑与 并且的意思&&(全为真则真)  **

语法规则:表达式1 && 表达式2,左右表达式必须是boolean类型的结果。

🆘这个也称短路与(就是表达式1假时就不会执行表达式2)

public class Main{
    public static void main(Sting[] args){
        int a = 1;
		int b = 2;
		System.out.println(a == 1 && b == 2); // 左为真 且 右为真 则结果为真
		System.out.println(a == 1 && b > 100); // 左为真 但 右为假 则结果为假
		System.out.println(a > 100 && b == 2); // 左为假 但 右为真 则结果为假
		System.out.println(a > 100 && b > 100); // 左为假 且 右为假 则结果为假
        }
 }

2.逻辑或|| 或的意思(全假为假)

语法规则:表达式1 || 表达式2,左右表达式必须是boolean类型的结果。

🆘这个也称短路或就是表达式1为真时就不会执行表达式2

3.逻辑非 !(真变假 假变真)

注意:后面必须是布尔表达式

🎆🎆🎆🎆🎆🎆位运算符(针对的是比特位)

  &:按位与   (对应位都为1则为10011
      0100
 -----------
      0111
      
  |:按位或		(对应位为有一个为一则为1)
      0011
      0100
 ------------
      0111
      
  ^:按位异或	(对应位一样时为0不一样时为10011
      0100
 -------------
      0111
      
🎆🎆🎆🎆🎆🎆🎆移位运算符(针对的是比特位)
左移:<<(补零)
    11:      0000 1011  
    11<<1 ==>0001 0110	(11*2^1)=22
    11<<2 ==>0010 1100	(11*2^2)=44 
   我们可以发现左移一位变为22两位变44他们成倍数的变化
        
右移:<<(补零)
     11:      0000 1011 
     11>>1 ==>0000 0101  可以看成(11/2^1)=5
     11>>2 ==>0000 0010	 可以看成(11/2^2)=2
     我们可以发现右移某次相当于除上几次
         
 无符号右移:>>> 不管符号位是0还是1  统统补零
🎆🎆🎆🎆🎆🎆🎆🎆条件运算符(三木运算符)

条件运算符只有一个:
表达式1 ? 表达式2 : 表达式3

当 表达式1 的值为 true 时, 整个表达式的值为 表达式2 的值;
当 表达式1 的值为 false 时, 整个表达式的值为 表达式3 的值.


号右移:>>> 不管符号位是0还是1 统统补零


#### 🎆🎆🎆🎆🎆🎆🎆🎆条件运算符(三木运算符)

**条件运算符只有一个:**
**表达式1 ? 表达式2 : 表达式3**

**当 表达式1 的值为 true 时, 整个表达式的值为 表达式2 的值;**
**当 表达式1 的值为 false 时, 整个表达式的值为 表达式3 的值.**

# 标题

  • 10
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值