基本运算符 --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? "不及格":"及格";
posted @ 2020-07-30 23:19  DJ赵  阅读(80)  评论(0)    收藏  举报