当前位置: java基础教程 > 04-变量、表达式 > 阅读正文

java 运算符

2021.1.19.   693 次   1252字

运算符主要包括以下几种

  1. 算术运算符
  2. 关系运算符
  3. 位运算符
  4. 逻辑运算符
  5. 赋值运算符
  6. 类型判断运算符

1.算术运算符

算术运算符,是进行数学计算的符号

符号描述
+加法
减法
*乘法
/除法
取余 – 取得余数
++自增: 变量的值加1
自减: 变量的值减1
1.加号( + )的特殊用法

不单可以进行数学运算,还可以用于字符串的连接,比如

String s = "hello"+"world"; // s 的值是 helloworld
2.运算时发生自动转换

在进行运算时,会自动将数据类型转换为 2 者中精度最高的数据类型

int a = (int)5.3 * 3; // 计算时,会自动转换为 double, 想要 int 必须强制转换
3.除法的规则

除法,得到的是整数,若想要余数,需要使用取余运算( % )

int s = 5/2; //得到的结果是 2,是一个 int 类型的数
4.自增自减的先后
int a = 10,b=10; // 定义 2 个变量,a,b均等于10
int a1 = 5*++a;   // a1 是先 ++,则等于11,再 * 5等于 55
int b1= 5*b++;  // b1是先使用 5*10, 则等于50

2.关系运算符

关系运算符,运算的结果是一个布尔值, true, false

符号描述
==恒等于( 等于 )
!=不等于
大于
小于
>=大于等于
<=小于等于

3.位运算符

位运算符,是取数据的 “二进制位” 进行操作的,用到的较少

符号描述
如果相对应位都是1,则结果为1,否则为0
|如果相对应位都是 0,则结果为 0,否则为 1
^如果相对应位值相同,则结果为0,否则为1
按位取反运算符翻转操作数的每一位,即0变成1,1变成0。
<< 按位左移运算符。左操作数按位左移右操作数指定的位数。
>> 按位右移运算符。左操作数按位右移右操作数指定的位数。
>>> 按位右移补零操作符。左操作数的值按右操作数指定的位数右移,移动得到的空位以零填充。

3.逻辑运算符

符号描述
&&与运算符,2者均为真,结果才为真
| |或运算符,2者中的任一个为真即为真
取非运算符
逻辑与,逻辑或运算,会出现 “短路” 情况

1.如果已知前一个条件为假,则与运算后一个条件不计算

2.如果已知前一个条件为真,则或运算后一个条件不计算

4.赋值运算符

符号描述
=右侧赋值给左侧
+ =左侧 = 左侧+右侧
– =左侧 = 左侧-右侧
* =左侧 = 左侧*右侧
/ =左侧 = 左侧/右侧
%=左侧 = 左侧%右侧
<< =左侧 = 左侧<<右侧
>> =左侧 = 左侧>>右侧
&=左侧 = 左侧&右侧
^ =左侧 = 左侧^右侧
| =左侧 = 左侧|右侧

5.三元运算符

有三个操作数,可用于替代简单的 if 语句

数值类型 变量名 = 表达式 ? 真 : 假

例如,让 c 取 a, b 中的最大值

int a=1,b=2; //定义 a=1, b=2
int c=a>b?a:b;// 如果a>b成立,则c=a,否则c=b

6.类型判断运算符

instanceof 是一个特殊的运算符,可以判断某个值是否属于某个类型

例子:

Integer name = 1;//定义一个变量为 interger 类型,值为 1
boolean result = name instanceof Integer; // result==>true

该运算符,只能用于封装类型

本篇完,还有疑问?

加入QQ交流群:11500065636 IT 技术交流群