1.算术运算符:
算术运算符是读者最熟悉不过的了,主要用于算术表达式中,比如“+”、“-”、“*”、“/”,它的本节先来介绍算术运算符如何应用,以及有哪些注意事项。
+:加法运算符,也可做字符的连接用途。
-:减法运算符。
*:乘法运算符。
/:除法运算符。
%:求余运算符。
例子:
public class Test01 { int i = 33; int j = 44; char c1 = 'a'; char c2 = 'b'; public static void main(String args[]) { Test01 t = new Test01(); int n = t.i + t.j; int m = t.j - t.i; int c = t.c1 + t.c2; int d = t.c2 - t.c1; int h = t.i * t.j; int k = t.j / t.i; int y = t.j % t.i; System.out.println("n = " + n); System.out.println("c = " + c); System.out.println("m = " + m); System.out.println("d = " + d); System.out.println(); System.out.println("h = " + h); System.out.println("k = " + k); System.out.println("y = " + y); } }
运行结果:
2.自增自减运算符:
所谓自增减运算符“++”,就是变量和数字1做加减法运算将运算的结果赋值给做运算的变量。该运算符可以放置到变量的前面或者是后面,都可以改变变量的结果。如下所示。
int i = 4;
i++;
int j = 4;
j = j + 1;
例子:
public class Test02 { public static void main(String args[]) { int i = 5; int j = 5; int m = 5; int n = 5; Test02 t = new Test02(); i++; j = j + 1; m--; n = n - 1; System.out.println(i); System.out.println(i++); System.out.println(++i); System.out.println(i--); System.out.println(); System.out.println(j); System.out.println(j++); System.out.println(j--); System.out.println(--j); System.out.println(); System.out.println(m); System.out.println(n); } }
运行结果:6,6,8,8,6,6,7,5,4;
3.关系运算符:
关系运算符是用来确定一个操作数和另一个操作数之间的关系,既然描述的是关系,那结果就为对或不对。在Java里就表示为真或假。下面是关系运算符的分类。
“==” :表示等于。
“!=” :表示不等于。
“>=” :表示大于等于。
“<=” :表示小于等于。
“>” :表示大于。
“<” :表示小于。
关系运算符比较基本类型时,表示比较的值是否相等。如果用“==”和“!=”比较对象,就表示比较对象的引用是否相等。
例子:
public class Test03 { public static void main(String args[]) { int i = 4; int j = 4; boolean b1 = i==j; boolean b2 = i!=j; boolean b5 = i>j; boolean b6 = i<j; boolean b7 = i>=j; boolean b8 = i<=j; String s1 = new String(); String s2 = new String(); boolean b3 = (s1 == s2); boolean b4 = (s1 != s2); System.out.println(b1); System.out.println(b2); System.out.println(b3); System.out.println(b4); System.out.println(); System.out.println(b5); System.out.println(b6); System.out.println(b7); System.out.println(b8); System.out.println(); } }
运行结果:
4.逻辑运算符:
逻辑运算符,其实就是比较二进制数的逻辑关系,运算结果为true或false。逻辑运算符包括如下几种。
与运算符:“&&”。“&&”运算符比较的是符号两边的表达式的真假。使用逻辑与时,如果表达式的结果可以由左侧的操作数单独决定时,Java就不会对右边的操作数再进行运算。
或运算符:“||”。“||”运算符比较的是符号两边的表达式的真假。
非运算符:“!”。“!”运算符是把符号右边的表达式的结果取反。如为true ,取反为false;如为false,取反为true。
例子:
public class Test04 { public static void main(String args[]) { boolean n = (4 > 3)&&(2<8); boolean m = (4 > 3)||(2<8); boolean h = !(2<8); System.out.println(n); System.out.println(m); System.out.println(h); } }
运行结果:true true false;
5.三元运算符:
三元运算符是对三个表达式进行的集中比较,条件判断语句的值为true时,结果就为第二个表达式值;如果条件判断语句的值为false时,结果就为第三个表达式值。语法如下:
条件判断语句?表达式1:表达式2
例子:
public class Test05 { public static void main (String args[]) { boolean n = (4 < 3) ? true : false; System.out.println(n); } }
运行结果: false;
6.位运算符:
为运算符主要用于对整数类型二进制运算,将操作数转换成二进制,然后按位进行比较。
运算符包括如下几种。
“&”:按位与运算符。按位与运算符,两个数同位都为1的时候该位结果即为1,有一边不是1的话该位结果就为0。
“|”:按位或运算符。按位或运算符,两个数同位有一个为1的时候该位结果即为1。
“^”:按位异或运算符。按位异或运算符,两个数同位都为1的时候该位结果即为0。有一个为1该位结果即为1。
例子:
public class Test06 { public static void main(String args[]) { // 0000 0100 & 0000 0011 int n = 4 & 3; int m = 4 | 3; int i = 4 ^ 3; System.out.println(n); System.out.println(m); System.out.println(i); } }
运行结果:0,7,7;
7、位移运算符:
位移运算符先把操作数转换成二进制数,然后向右向左移动相应的位数。位移运算符包括如下几种。
“>>” :带符号右移运算符。右移运算符是把操作数转换成二进制数向右移动指定的位数。该右移运算符是有符号的,如果为正数就补0,如果为负数就补1。
“<<” :带符号左移运算符。左移运算符是把操作数转换成二进制数向左移动指定的位数。该左移运算符是有符号的,如果为正数就补0,如果为负数就补1。
“>>>” :无符号右移运算符。(C 语言中没有这个运算符)
无符号右移运算符是把操作数转换成二进制数向右移动指定的位数。无符号右移运算符全在最高位上补0。
例子:
public class Test07 { public static void main(String args[]) { int n = 7 >> 2; int m = 7 << 2; int i = 7 >>> 2; System.out.println(n); System.out.println(m); System.out.println(i); } }
8.赋值运算符:
赋值运算符就是把一个值赋给一个变量。好比在日常生活中进行a=3操作,以后就可以用a表示3这个数值了一样,即把3赋给变量a。
一般运算符使用“=”,在编写代码时最常用,也很容易理解。示例如下:
int n = 3;
这一条语句的含义是把数值3赋值给整型变量n。
运算赋值运算符和一般赋值运算符很相似,也是赋值用的,但它具有运算的功能。
例子:
public class Test08 { public static void main (String args[]) { int n = 7; int j = 1; j += n; System.out.println(j); j -= n; System.out.println(j); j *= n; System.out.println(j); } }
运行结果:8, 1, 7;