运算符
Java语言支持如下运算符:
- 算术运算符:+、-、*、/、%(取余,模运算)、++(自增)、 --(自减)
- 赋值运算符:=
- 关系运算符:>、<、>=、<=、==、!=instanceof(不等于)
- 逻辑运算符:&&、||、!
- 位运算符:&、|、^、~、>>、<<、>>>
- 条件运算符:?:
- 拓展赋值运算符:+=、-=、*=、/=
算术运算符
首先是最简单的加减乘除
最后一个输出的a/b结果是0,得出结果因该是0.5,所以要进行转换为double
输出结果就对了
如果计算中有一个数为long时,结果也为long,double也是一样;如果计算中没有,那结果就为int
**自增自减(++、–)**一元运算符
int g =3;
int f =g++;
int h =++g;
输出这三个数得到的结果
int g =3;
int f =g++; //g=g+1
System.out.println(g);
int h =++g;
将输出语句换到下面一行的话输出结果就对
g++是执行这行代码后,给f赋值,在自增
++g是执行这行代码前,先自增,在给f赋值
取余(模运算)
int a =10;
int b =21;
System.out.println(b%a); //相当于是b/a,21/10=2...1(取余)
关系运算符
关系运算符返回的结果只有true(正确)、false(错误),通过布尔值来表示,结果也一定是布尔值
数学中的幂运算,2^3=2x2x2=8,在计算机中
double pow = Math.pow(2,3);
System.out.println(pow) //很多运算我们会使用一些工具来操作
逻辑运算符
- &&与(and),逻辑与运算:两个变量都为对,结果才为对
- ||或(or),逻辑或运算:两个变量有一个为对,结果为对
- ~非(取反不是这个就是另一个):如果是对,结果则为错;如果是错,结果则为对
短路运算:若在计算开始就碰到错,则后面就不会在进行计算
遇到错后面的计算则不会进行,不然c++输出的结果为6
位运算符号
&、|、^、~
<<左移 :数字×2 >>右移:数字/2
输出
System.out.println(2<<3);
字符串连接符
- 如果出现了字符串连接符,会将两个值连接起来
- 如果字符串出现在后面,则前面的计算正常运行
如果将""移到a+b的后面,则前面的计算正常进行
三元运算符(? :)
x ? y : z
如果x==true,则结果为y,否则结果为z
把score的80改成50,则输出结果就为不及格了。
运算符的优先级