Java基础-运算符

本文深入探讨了Java编程语言中的各种运算符,包括算术运算符、比较运算符、逻辑运算符、位运算符以及赋值运算符。通过实例解析,阐述了它们的使用方法和适用场景,帮助开发者更好地理解和掌握Java基础。
摘要由CSDN通过智能技术生成
1:短路与&&。a&&b,当a为false时,程序不会再判断b的逻辑判断
	 int a = 6;
   int b = 2;
   if(a < 1 && b++ >5){
         System.out.println(1111);
   }
   System.out.println(b); // 2

	 int a = 6;
   int b = 2;
   if(a < 8 && b++ >5){
         System.out.println(1111);
   }
   System.out.println(b); // 3
    
2:逻辑与&。a&b,不管什么情况下,程序都会执行a和b的逻辑判断
3:短路或||。a||b,当a为true,程序不会再判断b
4:逻辑或|。a|b,不管什么情况下,程序都会判断a、b
取模运算
1:%取余
	 -10.5%3 = -1.5 //a%b,当a是小数时,公式=a-(int)a/b*b    
自增
1:隐式类型转换
	 byte b = 3;
	 b += 2; //等价于 b=(byte)(b+2)
	 b++;//等价于b=(byte)(b+1)
2:int i = 1;
   i = i++;// 1.
   计算机的规则:此处会使用一个临时变量,(1)temp=i(2)i=i+1(3)i=temp
3:int i = 1;
   i = ++i;//2
   计算机的规则:此处(1)i=i+1(2)temp=i(3)i=temp
4:int i = 66;
    ++i+i;//67+67
三目运算符
1:三目运算符
	 int a = 1;
   int b =2;
   int c = a>b?a--:b--;//a=1;b=1
   int d = a<b?a--:b--;//a=0;b=2
2:三目运算符
	 int a = 1>2?0.1:0.2; //编译失败,表达式中的数据类型要与接收变量的数据类型一致
3:三目运算符相当于if...else   

位移
m>>n: m/2^n
m<<n: m*2^n
取余
m%n => (n-1)&m
效率对比xxxxxxxxxx 1:强制转换是自动转换的逆过程。将容量大的数据类型转换为容量小的数据类型,   使用时要加上强制转换符()。但可能会造成精度丢失2:int a = (int)1.9;//1 造成了精度丢失   byte b = (byte)2000;// 造成了溢出3:byte b = 1;   b = b +1; //错误,int->byte   b = (byte)(b+1);//正确。4:byte b = 1;   short s = 2;   short s = s + b;5:double d = 1/2; // 0.0,1/2由于没有指定数据类型,计算结果默认为int,int转化为double会精度丢失   double d = 1/2d;//0.5plain
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值