算术运算符:
"+" "-" "*" "/" "%"(其中%的意思是取余)
/ 和 % 的区别:两者都是除法运算,/是取结果得商,%则是取余。
运算演示:
public static void main(String[] args) {
int a =8;
int b = 2;
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);
运算结果:
其中符号"+"可以把字符和数字相加,但是会默认转变成int类型,而字符转变就是根据它的 ASCII码来转变。
eg:
char a = 'a';
int b = 2;
System.out.println('a'+b);
运行结果:
等于99的原因是因为a的ASCII码是97,就('a'+b)就相当于97+2,也就等于99
另外特别注意的一点是:单引号的+是算术运算符用于相加;而双引号的+是连接作用不是相加作用。
eg:
int a = 10;
int b = 20;
int c = a+b;
System.out.println(c);// 输出结果是30
int a = 10;
int b = "20";
int c = a+b;
System.out.println(c);// 输出结果是1020
自增自减运算符:
单独使用的时候,++和--无论放在变量前后效果没有区别,
参与操作的时候,变量放在后面,则先用原来的值进行运算,然后本身再加一,变量放在前面,则本身先加一,然后再用加一后的值进行操作。
eg:
int n = 1;
int m = 1;
int a = n++;
int b = ++m;
System.out.println(a);
System.out.println(n);
System.out.println(b);
System.out.println(m);
运行结果:
赋值运算符:
关系运算符:
逻辑运算符:
是用来连接关系表达式的运算符,也可以直接连接布尔类型的常量或者变量。
短路逻辑运算符:
两者之间的对比:
逻辑与,左边无论真假,右边都会执行
短路与,左边真,右边执行;左边假,右边不执行。
逻辑或,左边无论真假,右边都得执行
短路或,左边为假,右边执行;左边为真,右边不执行。
位运算符:
三元运算符:
格式:关系表达式?表达式1:表达式2;
关系表达式为true,则运行结果为表达式1,关系表达式为false,则运行结果为表达式2
eg:
/*
三个和尚,身高分别为150,210,180,求最高那个和尚的身高。
*/
int a =150;
int b = 210;
int c = 180;
int d = 0;
d = a>b?a:b;
d = d>c?d:c;
System.out.println("最高身高为:"+d);
运行结果: