基本运算符 --JAVA day05
9.基本运算符

% 取余,模运算
int a = 10;
int b = 21;
System.out.println(b%a);
++ 自增
int a = 3;
int b = a++;
System.out.println(a); //a 在前 ++ 在后 先赋值在运算
int c = ++a;
System.out.println(a); //++ 在前 a 在后 先运算再赋值
-- 自减
幂运算
//幂运算调用Math工具类。很多特殊的运算要用到他
double d = Math.pow(2,3);
System.out.println(d);
= 赋值运算符
== 等于
!= 不等于 instanceof
&& || ! //与或非逻辑运算
//逻辑运算符
boolean a = true;
boolean b = false;
System.out.println(a && b); //两个为真才为真
System.out.println(a || b); //有一个为真即为真
System.out.println(!(a && b)); //如果为真即为假,如果是假即为真。
//短运算
int c = 5;
boolean d = (c<4); //判断c是不是小于4
System.out.println(d); //结果返回false
boolean e = (c<4)&&(c++<4); //判断c是不是小于5与执行c自增
System.out.println(c); //结果返回的C值
/ 除出小数的时候 用 double转换
运算中有一个数为 long 则结果类型为long,其余全部为 int
位运算
/*
位运算
A = 0011 1100
B = 0000 1101
-----------------------------
A&B = 0000 1100 如果比较位都是1则为1.
A|B = 0011 1101 如果比较位有1则为1.
A^B = 0011 0001 如果比较位相同则为1,否则为0。
~B = 1111 0011 如果比较位都是1则为0,否则为1。
-----------------------------------------
2*8怎么运算最快?
2*2*2*2 ?
<< 左移 *2
>> 右移 /2
0000 0000 0
0000 0001 1
0000 0010 2
0000 0011 3
0000 0100 4
0000 1000 8
0001 000016
*/
System.out.println(2<<3);
扩展赋值运算符
a += b; // a = a+b
a -= b; // a = a-b
a *= b; // a = a*b
a /= b; // a = a/b
//字符串连接符 + a
System.out.println(""+a+b); //+号前有字符串类型则不运算输出字符串
System.out.println(a+b+""); //字符串在加号后运算完输出字符串
三元运算符
int score =80;
String type = score <60? "不及格":"及格";
浙公网安备 33010602011771号