- Java语言中的运算符(也称操作符)在风格和功能上都与C 和C++极为相似。
- Java语言中一些主要的运算符,包括算术运算符、关系运算符、逻辑运算符、位运算符和其他运算符。
算术运算符:
- Java中的算术运算符主要用来组织数值类型数据的算术运算,按照参照运算的操作数的不同可以分为:
- 一元运算符
- 二元运算符
一元运算符
| 运算符 | 名称 | 说明 | 例子 |
|---|---|---|---|
| - | 取反符号 | 取反运算 | b=-a |
| ++ | 自取一 | 先取值再加一,或先加一再取值 | a++或++a |
| -- | 自减一 | 先取值再减一,或先减一再取值 | a--或--a |
- -a是对a取反运算,a++或a--是在表达式运算完后,再给a加一或减一。而++a或--a是先给a加一或减一,然后再进行表达式运算。
点击查看代码
int a = 12;
System.out.println(-a);
int b = a++;
System.out.println(b);
b = ++a;
System.out.println(b);
输出结果如下:
-
-12
-
12
-
14
-
上述代码第①行是-a,是把a变量取反,结果输出是-12。第②行代码是先把a赋值给b变量再加一,即先赋值后++,因此输出结果是12。第③行代码是把a加一,然后把a赋值给b变量,即先++后赋值,因此输出结果是14。
二元运算符:
- 二元运算符包括:+,-,*,/和% ,这些运算符对数值类型都有效。如下图:
![image]()


算术赋值运算符:
算术赋值运算符只是一种简写,一般用于变量自身的变化,具体说明如下:
| 运算符 | 名称 | 例子 |
|---|---|---|
| += | 加赋值 | a+=b,a+=b+3 |
| -= | 减赋值 | a-=b |
| *= | 乘赋值 | a*=b |
| /= | 除赋值 | a/=b |
点击查看代码
public class hello {
public static void main(String[] args){
int a = 1;
int b = 2;
a += b; //相当于a = a+b
System.out.println(a);
a += b + 3; //相当于a=a+b+3
System.out.println(a);
a -= b; //相当于 a = a-b
System.out.println(a);
a *=b; //相当于a=a*b
System.out.println(a);
a /=b; //相当于 a=a/b
System.out.println(a);
a %=b; //相当于a=a%b
System.out.println(a);
}
}
运行结果:

关系运算符:
关系运算符是比较两个表达式大小关系的运算,它的的结果是布尔类型数据,即True或False.
关系运算符有6种:==,!=,>,<,>=和<=。具体如下:
| 运算符 | 名称 | 说明 | 例子 |
|---|---|---|---|
| == | 等于 | a等于b时返回true,否则返回false。可以应用于基本数据类型和引用数据类型 | a==b |
| != | 不等于 | 与==相反 | a!=b |
| > | 大于 | a大于b时返回true,否则返回false,只应用于基本数据类型 | a>b |
| < | 小于 | a小于b时返回true,否则返回false,只应用于基本数据类型 | a<b |
| >= | 大于等于 | a大于等于b时返回true,否则返回false,只应用于基本数据类型 | a>=b |
| <= | 小于等于 | a小于等于b时返回true,否则返回false,只应用于基本数据类型 | a<=b |
点击查看代码
public class YunSuanFu {
public static void main(String[] args) {
int value1 = 1;
int value2 = 2;
if (value1 == value2) {
System.out.println("value1 == value2");
}
if(value1 != value2) {
System.out.println("value1 != value2");
}
if(value1 > value2) {
System.out.println("value1 > value2");
}
if (value1 < value2) {
System.out.println("value1 < value2");
}
if (value1 >= value2) {
System.out.println("value1 >= value2");
}
if (value1 <= value2) {
System.out.println("value <= value2");
}
}
}
运行结果:

逻辑运算符:
逻辑运算符是对布尔型变量进行运算,其结果也是布尔型。



位运算符:
位运算是以二进位(bit)为单位进行运算的,操作数和结果都是整型数据。位运算符有如下几个运算符:&、|、^、~、>>、<<和>>>,以及相应的赋值运算符。




其他运算符:
除了前面的这些主要的运算符,Java还有一些其他的运算符。
- 三元运算符(? : )。例如x?y:z,其中x,y,z都是表达式。
- 小括号。 起到改变表达式运算顺序的作用,它的优先级最高。
- 中括号。 数组下标
- 引用号(.)。 对象调用实例变量或者实例方法的操作符,也是类调用静态变量或静态方法 的操作符。
- 赋值号(=)。赋值使用等号运算符进行的。
- instanceof。 判断某个对象是否属于某个类的。
- new 。 对象内存分配运算符。
- 箭头(->) 。 用来声明Lambda表达式。
- 双冒号(: : ) 。用来Lambda表达式方法的引用。
点击查看代码
import java.util.Date;
public class HelloWorld {
public static void main(String[] args) {
int score = 80;
String result = score > 60 ? "及格" : "不及格"; //三元运算符(?:)
System.out.println(result);
Date date = new Date(); //new 运算符可以创建Date对象
System.out.println(date.toString()); //通过.运算符调用方法。
}
}
运算符的优先级:
在一个表达式计算过程中,运算符的优先级非常重要。表7-7中从上到小,运算符的优先级从高到低,同一行具有相同的优先级。二元运算符计算顺序从左向右,但是先级15的赋值运算符的计算顺序从右向左的。

本文来自博客园,作者:kevin的ICT菜鸟之路,转载请注明原文链接:https://www.cnblogs.com/kevinwen25/articles/17875072.html

浙公网安备 33010602011771号