1、算术运算符:+,-,*,/,%,++,–
1.-,*与数学中使用是一样的.
2.+:如果+左右两边是数字,+起算术运算,求和.如果+左右两边有一边是字符串,+起连接作用
3.作除法运算.注意:在Java中,整数=整数/整数
//+作算术运算作用
System.out.println(1+1);//2
//两个+起连接作用
System.out.println("1"+1+1);//111
//第一个+起算术作用,第二个+起连接作用
System.out.println(1+1+"1");//21
//在Java中,整数=整数/整数
int num1=10/2;//5
int num2=10/3;//3
//在算术式中,有一个数为大类型,结果就提升为大类型
double num3=10/3.0;//3.33
4:%(求余运算/取模运算符):求两个数的余数.
int num4=10%3;//1
//给你一个随机四位整数,求这个四位数的各位数字之和,
int num5=4567;
int gewei=num5%10;//4
int shiwei=num5/10%10;//4
int baiwei=num5/100%10;//2
int qianwei=num5/1000;//2
int sum=gewei+shiwei+baiwei+qianwei;
5.++:在自身基础上加1.–在自身基础上减1.
int num=8;
++num:num先自身加1,再参加运算
num++:num先执行运算,再自身加1
–num:num先自身减1,再参加运算
num–:num先执行运算,再自身减1
int a=8;
int result1=(a++)+(++a)+(--a)+(a--);
//分析:result1=8+(++a)+(--a)+(a--); a=9
//result1=8+10+(--a)+(a--); a=10
//result1=8+10+9+(a--); a=9
//result1=8+10+9+9; a=8
System.out.println("result1="+result1+",a="+a);//36,8
2、关系运算符:>,<,>=,<=,!=,==
1.>,<,>=,<=,!=与数学中用法一致.
2.==:在java中表比较.
double luoheight=1.8;
double myheight=1.6;
boolean result1=luoheight==myheight;
int a=8;
int b=a;
int c=b=a;
3、逻辑运算符:且(&,&&),或(|,||),非(!)
1.非(!):非真即假,非假即真.
2.且(&,&&):且左右两边的式子全真,结果为真;有一边为假,结果为假.
&(普通且):&两边的式子都会判断执行.
&&(短路且):&&左边式子为假,右边式子不会判断执行;&&左边式子为真,右边要判 断执行
3.或(|,||):或左右两边的式子有一个为真,结果为真;两边式子全为假,结果为假.
|(普通或):|两边的式子都会判断执行.
||(短路或):||左边式子为真,右边式子不会判断执行;||左边式子为假,右边要判 断执行.
注意:一般情况下,用短路且和短路或.
int a1=8;
boolean result1=++a1<8&a1-->=8;
boolean result2=++a1<8&&a1-->=8;
boolean result3=++a1>8|a1-->=8;
boolean result4=++a1>8||a1-->=8;
4.^(抑或) : ^左右两边值是boolean类型. ^左右两边相同为false,不同为true
//^左右两边相同为false,不同为true
boolean result5=true^false;
4、赋值运算符:=,+=,-=,*=,/=
1.=:将等于号右边值赋给左边.
2.+=,-=,*=,/=:将赋值号左边的值加上/减去/乘以/除 右边的数据得到的结果赋给左边.
byte b1=1;
b1+=1; //b1=(byte)b1+(byte)1
5、运算符优先级:()>算术运算符>关系运算符>逻辑运算符>赋值运算符