Java基础知识:运算符
运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。
- 算术运算符
- 赋值运算符
- 比较运算符(关系运算符)
- 逻辑运算符
- 位运算符
- 三元运算符
算术运算符
注意点:
- 如果对负数取模,可以把模数负号忽略不记,如:5%-2=1。 但被模数是负数则不可忽略。此外,取模运算的结果不一定总是整数。
- 对于除号“/”,它的整数除和小数除是有区别的:整数之间做除法时,只保留整数部分而舍弃小数部分。
例如:
int x=3510;
x=x/1000*1000; //x的结果是3000
- “+”除字符串相加功能外,还能把非字符串转换成字符串.
例如:
System.out.println("5+5="+5+5); //打印结果是?5+5=55
举例:
public class TestSign{
public static void main(String[] args){
int i1 = 10,i2 = 20;
int i = i1++;
System.out.print(“i=”+i); //i=10
System.out.println(“i1=”+i1);//i1=11
i = ++i1;
System.out.print(“i=”+i);//i=12
System.out.println(“i1=”+i1);//i1=10 11 12 13
i = i2--;
System.out.print(“i=”+i);//i=20
System.out.println(“i2=”+i2);//i2=19
i = --i2;
System.out.print(“i=”+i);//i=18
System.out.println(“i2=”+i2);//i2=18
}
}
赋值运算符
- 符号:=
当“=”两侧数据类型不一致时,可以使用自动类型转换或使用强制类型转换原则进行处理。(支持连续赋值) - 扩展赋值运算符: +=, -=, *=, /=, %=
比较运算符
- 比较运算符的结果都是boolean型,也就是要么是true,要么是false。
- 比较运算符“==”不能误写成“=” 。
逻辑运算符
- 逻辑运算符用于连接布尔型表达式,在Java中不可以写成3<x<6,应该写成x>3 & x<6 。
- “&”和“&&”的区别:
1、单&时,左边无论真假,右边都进行运算;
2、双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。 - “|”和“||”的区别同理,||表示:当左边为真,右边不参与运算。
在不需要逻辑运算两边都参与运算的时候,尽量使用&&和|| - 异或( ^ )与或( | )的不同之处是:当左右都为true时,结果为false。
理解:异或,追求的是“异”!
位运算符
- 位运算是直接对二进制进行运算
- 注意:无<<<
三元运算符
格式:
(条件表达式)? 表达式1:表达式2;
返回:
条件表达式为true,运算后的结果是表达式1;
条件表达式为false,运算后的结果是表达式2;
运算符优先级
- 运算符有不同的优先级,所谓优先级就是表达式运算中的运算顺序。如下表,上一行运算符总优先于下一行。
- 只有单目运算符、三元运算符、赋值运算符是从右向左运算的。