Java学习笔记
基本运算符
java支持以下运算符:
算术运算符:+ - * / % ++ –
赋值运算符:==
关系运算符:> < >= <= == != instanceof
逻辑运算符:&& || !
位运算符:& | ^ ~ >> << >>>
条件运算符:?:
扩展赋值运算符:+= -= *= /=
代码示例
public class 基本运算符 {
public static void main(String[] args) {
//二元运算符
int a =10;
int b =20;
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(a/(double)b);
long c =123123123123L;
int d =123;
short e =10;
byte f=8;
System.out.println(c+d+e+f);//多个数有一个数为long,那结果为long
System.out.println(e+f+d);//如果没有long,结果为int
System.out.println(e+f);//就算没有int,只要没有long,结果也为int 同理,如果有double,结果为double
//关系运算符返回的结果:true false
int z = 10;
int x = 20;
System.out.println(a>b);
System.out.println(a<b);
System.out.println(a==b);
System.out.println(a!=b);
int m = 21;
int n = 10;
System.out.println(m%n);//取余
}
}
运行结果
30
-10
200
0.5
123123123264
141
18
false
true
false
true
1
代码示例
public class 自增自减运算符和math类 {
public static void main(String[] args) {
//++自增运算符 --自减运算符 一元运算符
int a =3;
int b = a++;//a++ a=a+1 执行完这行代码后,先给b赋值,再自增
System.out.println(a);
int c = ++a;//先自增,再给c赋值
System.out.println(a);
System.out.println(b);
System.out.println(c);
//幂运算 2^3=2*2*2=8 很多运算,可以借助工具类来运算
double pow = Math.pow(3,2);//借助工具类Math计算3^2
System.out.println(pow);
}
}
运算结果
4
5
3
5
9.0
代码示例
public class 逻辑运算符 {
public static void main(String[] args) {
//与 and 或or 非not
boolean a = true;
boolean b = false;
System.out.println("a&&b:"+(a&&b));//+在这里是连接的意思
System.out.println("a||b:"+(a||b));
System.out.println("!(a&&b:)"+!(a&&b));
//短路运算
int c= 5;
boolean d =(c<4)&&(c++<4);//在z=x&&y的运算中,如果前面的x为假,后面的y就不会执行,直接返回false给z
System.out.println(d);
System.out.println(c);//c++不会执行,所以c仍为5
//位运算符
/*
A = 0011 1100
B = 0000 1101
A&B = 0000 1100
A|B = 0011 1101
A^B = 0011 0001 异或 相同为0 不同为一
~B = 1111 0010
2*8 = 2*2*2*2=16
<< 左移一位 相当于乘2 >> 右移一位 相当于除2
0000 0000 0
0000 0001 1
0000 0010 2
0000 1000 8
0001 0000 16
所以2<<3=16
*/
System.out.println(2<<3);
System.out.println(2>>1);
}
}
运行结果
a&&b:false
a||b:true
!(a&&b:)true
false
5
16
1