运算符、表达式和语句

文章详细阐述了Java中不同数据类型的运算精度,如double、float、long和int等,并介绍了运算规则。关系和逻辑运算符的使用,以及位运算符的原理和应用也在文中提及。此外,还提到了instanceof运算符用于判断对象类型的功能,最后概述了运算符的优先级和结合性。
摘要由CSDN通过智能技术生成

算术混合运算的精度

精度从“低”到“高”排列的顺序是:

byte  short  char  int  long  float  double

运算精度规则:

  1. 如果表达式中有双精度浮点数(double型数据),则按双精度进行运算。
  2. 如果表达式中最高精度是单精度浮点数(float型数据),则按单精度进行运算,
  3. 如果表达式中最高精度是long型整数,则按long精度进行运算。
  4. 如果表达式中最高精度低于int型整数,则按int精度进行运算。
  5. Java允许把不超出byte、short和char的取值范围的算术表达式的值赋给byte、short和char型变量。

 关系运算符与关系表达式

运算符
只能用于数值类型>    <    >=    <=
可用于所有数据类型==    !=

逻辑运算符与逻辑表达式

逻辑运算符
运算符用法含义
&&op1&&op2逻辑与同真才真
||op1||op2逻辑或有真则真
!!op逻辑非取反

       逻辑运算符的操作元必须是boolean型数据。

       逻辑运算符&&和||也称作短路逻辑运算符,即当op1的值为false时&&无需再计算op2的值,直接得出 op1&&op2 结果为false;当op1的值为true时,直接得出 op1||op2 结果为true。

位运算符

整型数据在内存中以二进制的形式表示,左边最高位是符号位,最高位是0表示正数,是1表示负数。负数采用补码表示。

位运算符
运算符用法
按位与运算(二目)

               a&b

同1才1
按位或运算(二目)a|b有1则1
按位非运算(单目)a~b取反
按位异或运算(二目)a^b同则0,异则1

由异或运算法则:a^a=0, a^0=a, ^的逆运算仍是^,  则a^b^b=a。

位运算符也可以操作逻辑型数据,但a和b的值需都知道才能得出结果,费时。

instanceof运算符

该运算符是二目运算符,左边的操作元是一个对象,右边是一个类。当左面的对象是右面的类或子类创建的对象时,该运算符运算的结果是true,否则是false。

运算符的优先性和结合性

运算符的优先级和结合性
优先级描述运算符结合性
1分隔符[ ]   ( )  .  ,  ;
2对象归类,自增自减运算,逻辑非instanceof  ++  --  !右到左
3算术乘除运算*   /  %左到右
4算术加减运算+  -左到右
5移位运算>>  <<  >>>左到右
6大小关系运算<   <=  >  >=左到右
7相等关系运算==  !=左到右
8按位与运算&左到右
9按位异或运算^左到右
10按位或|左到右
11逻辑与运算&&左到右
12逻辑或运算||左到右
13三目条件运算 ? : 左到右
14赋值运算=右到左

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值