1.1算术运算符
基本的运算符有+ - * / ,我们分别举一个例子来实现
public static void main(String[] args) {
int a = 1;
int b = 2;
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(a/b);
}
其中除法要注意类型转换,上例中因为没有类型转换,所以结果为0。我们也要特别注意0不能做除数。
public static void main(String[] args) {
int a = 1;
int b = 0;
System.out.println(a/b);
}
除此之外,还有自增自减运算符,取模运算符和增量赋值运算符
public static void main(String[] args) {
int a = 1;
a++;
System.out.println(a);
int b = 1;
b += 3;
System.out.println(b);
System.out.println(a % b);
}
1.2关系运算符
关系运算符有== != < > <= >=
判断结果只能用TRUE和FALSE来表示
public static void main(String[] args) {
int a = 3;
int b = 5;
System.out.println(a == b);
System.out.println(a != b);
System.out.println(a > b);
System.out.println(a < b);
System.out.println(a >= b);
System.out.println(a <= b);
}
1.3逻辑运算符
逻辑运算符主要有三个: && || ! 注意: 逻辑运算符的操作数(操作数往往是关系运算符的结果)和返回值都是 boolean .
具体实例如下:
public static void main(String[] args) {
int a = 3; int b = 5;
System.out.println(a == 3 && b == 5); // 左为真 且 右为真 则结果为真
System.out.println(a == 3 && b >=100); // 左为真 但 右为假 则结果为假
System.out.println(a > 100 && b == 5); // 左为假 但 右为真 则结果为假
System.out.println(a > 100 && b > 100); // 左为假 且 右为假 则结果为假
}
运行结果如下:
1.4位运算符
在计算位运算符时,需要先将数字转化为二进制数字,然后再对应二进制数字进行位运算。
1.5移位运算符
<< >> >>>
<<是左移运算符,将一个数的二进制数向左移动一位,右边补0
>>是右移运算符,将一个数的二进制数向右移动一位,左边补符号位
>>>是无符号右移运算符,将一个数的二进制数看做无符号数,最右侧位不要了,左侧补0
注意: 1. 左移 1 位, 相当于原数字 * 2. 左移 N 位, 相当于原数字 * 2 的N次方. 2. 右移 1 位, 相当于原数字 / 2. 右移 N 位, 相当于原数字 / 2 的N次方. 3. 由于计算机计算移位效率高于计算乘除, 当某个代码正好乘除 2 的N次方的时候可以用移位运算代替. 4. 移动负数位或者移位位数过大都没有意义.
1.6条件运算符
表达式1 ? 表达式2 : 表达式3 当 表达式1 的值为 true 时, 整个表达式的值为 表达式2 的值; 当 表达式1 的值为 false 时, 整个表达式的值为 表达式 3 的值
public static void main(String[] args) {
int a = 3;
int b = 5;
int max = a > b ? a : b;
System.out.println(max);
}