package operator;
/*
6类运算符:
计算运算符:+ - * / %(取余) ++(自增) --(自减)
比较运算符:> < >= <= ==(这才是等于) !=(不等于) instanceof
逻辑运算符:1. &&(和;条件必须都true结果才为true)
2. ||(或;有一个条件true,结果都为true)
3. ! (非;条件true,结果为false;条件false,结果为true)
4. ^ (异或;^两边运算符相同,结果为false;不同则为true)
位运算符: & | ~ ^ <<(*2) >>(/2) >>>
条件运算符:? :
例:x ? y : z(如果x==true ,则结果为y,否则结果为z)
赋值运算符:=(是赋值,不是等于) += -= *= /= %=
例:a+=b意思是a=a+b(b值不变);-= *= /= %= 以此类推
运算符优先级顺序:()最快;
条件运算符和赋值运算符最慢(条件和赋值运算符是唯二从右到左执行的)
*/
public class Demo1 {
public static void main(String[] args) {
//%(取余):也叫模运算
int a0=10;
int b0=25;
System.out.println(b0%a0);//余数为5 计算过程:25除以10=2余5
// ++(自增1)或 --(自减1)在后面时先赋值再自增自减;在前面时先自增自减再赋值
int i=1;
int i1=i++;//赋值但还没自增
System.out.println(i1);//结果为1
//自增:i自增1变2
int i2=++i;//i由2又自增变3
System.out.println(i2);//结果为3
//Ctrl+D:快速复制当前行到下一行
int a=1;
int b=2;
System.out.println(a*b);
System.out.println((double)a/(double)b);//结果为小数时,为了准确要转为浮点型
// 当计算的为整型和char型时结果会自动转换为默认的int型(除非结果超过int取值范围,将自动转为long型)
// 当要计算的值带有浮点型结果会自动转换为默认的double型
// 原因:自动转换会从存储小的类型转换成存储大的类型
// 存储范围排序:byte<short(char)<int<long<float<double
char a1='A';
long b2=1L;
float c3=1.5F;
System.out.println(a1+b2+c3);//结果为double型
System.out.println(a1+b2); //结果为int型
//比较运算和逻辑运算声明时必须用boolean型;因为输出结果是boolean型,即true或false
boolean a3=(1==1)||(1<2);
System.out.println(a3);
//位运算符作用:运算二进制数
/*
int A=0011;
int B=1100;
System.out.println(A&B); //&:与,全1才1 结果:0000
System.out.println(A|B); //|:或,全0才0 结果:1111
System.out.println(~A); //~:非,取相反 结果:1100
System.out.println(A^B); //^:异或,相同则0,不同则1 结果:1111
*/
System.out.println(1<<3); //<<:相当于*2; 1<<3即为1*2*2*2
System.out.println(16>>3); //>>:相当于/2; 16>>3即为16/2/2/2
//赋值运算符:
int t=10;
int x=20;
System.out.println(t+=x); // t+=x等于t=t+x,x不变
System.out.println(t-=x); // t-=x等于t=t-x,x不变
// -= *= /= %= 以此类推
//+号除了是加法运算符,还是字符串(String)连接符
System.out.println(""+t+x);//结果为1020,字符串在前面,后面的运算不会进行
System.out.println(t+x+"");//结果为30,字符串在后面,前面的运算照常进行
//条件运算符:? :
//x ? y : z
//如果x==true ,则结果为y,否则结果为z
int score=70;
String type=score<60 ?"不及格":"及格";
System.out.println(type);
//用工具类Math.pow()实现幂运算:
double d5=Math.pow(2,3);
System.out.println(d5);//2的三次方结果为8
}
}
8. Java运算符
最新推荐文章于 2024-11-13 20:43:20 发布