java基础-2-运算符-学习笔记

运算符

java提供丰富运算符,大概分为算术数运算符关系运算符位运算符逻辑运算符赋值运算符

算术运算符

该运算符就在数学上的应用一样

操作符 描述 例子
+ 加法 A+B
- 减法 A-B
* 乘法 A*B
/ 除法,取商 A/B
% 取余数 A%2
++ 自增 A++,++A
-- 自减 C--,--C

注意: A++,++A的区别

例子:

int a =3;
int b = a++; //实际打印b=3
//第一次打印a=4
int c = ++a; //实际打印c=4
//第二次打印a=5

解析:
运算拆分

int a =3
int b =a++;
a = a+1 =4
b = 4;
a = 4;

++a,--a,先进行自增(自减)运算,在进行表达式运算

a++,a--,先进行表达式运算,再进行自增(自减)运算

关系运算符

操作符 描述 例子
== 检查两个值是否相等,是返回true,反之返回false A==B
!= 检查两个值,不相等则返回true,反之返回false A!= B
> 检查左边值是否大于右边值,是的返回为true,反之返回false A>B
< 检查左边值是否小于右边值,是的话返回为true,反之返回false A<B
>= 检查左边值是否大于等于右边值,是返回为true,反之返回false A>=B
<= 检查左边值是否小于等于右边值,是返回为true,反之返回false A<=B

位运算符

java定义的位运算符,适用于byte,short,char,int,long等类型
位运算符在所有的位上,并且按位运算
举例:A=60,B=13,以下用二进制表示

A = 0 0 1 1 1 1 0 0 
B = 0 0 0 0 1 1 0 1 

A&B = 0 0 0 0 1 1 0 0 
A|B = 0 0 1 1 1 1 0 1 
A^B = 0 0 1 1 0 0 0 1 
~A  = 1 1 0 0 0 0 1 1 
A<<2= 1 1 1 1 0 0 0 0 
A>>2=         1 1 1 1 
A>>>2=0 0 0 0 1 1 1 1 
操作符 描述 例子
& 相对应位均为1的话,则为1,反之为0 A&B
| 相对应位均为0的话,则为0,反之为1 A|B
^ 相对应位均相等的话,则为0,反之为1 A^B
~ 取反运算符,1变0,0变1 ~a
<< 2 左边的值的位向左移动2位 A<<2
>>2 左边的值的位向右移动2位 A>>2
>>>2 左边的值的位向右移动2位,移动均以0补充 A>>>2

逻辑运算符

操作符 描述
&& 与运算符,两者为真,才返回true,反之false
| | 或运算符,两者其一为真,即返回true,反之为false
! 非运算符,将操作值的逻辑状态反转,true变false,false变true

赋值运算符

操作符 描述 例子
= 将右边值赋给左边值 C=A+B
+= 将左值加上右值重新赋给左边值 C+=A C=C+A
-= 将左值减去右值重新赋给左边值 C-=A C=C-A
*= 将左值乘于右值重新赋给左边值 C*=A C=C*A
/= 将左值除于右值得到商重新赋给左边值 C/=A C=C/A
%= 将左值除于右值得到余数重新赋给左边值 C%=A C=C%A
<<= 将左值的位向左移右操作值位数重新赋给左边值 C<<=2 C=C<<2
>>= 将左值的位向右移右操作值位数重新赋给左边值 C>>=2 C=C>>2
&= 按照按位与赋值 C&=2 C=C&2
^= 按照按位异或赋值 C^=2 C=C^2
| = 按照按位或赋值 C | =2 C=C | 2

三目运算符

该运算符有三个操作数,并需要判断布尔型的值,来确定讲那个数赋值给变量
真返回?后面的值来赋值,反之拿:后面值来赋值

int a = 0;
int b = 3;

//这处a=20,由于3小于5,取:后的值赋值给a
int a = (b>5)?10:20 

//这处a=10,由于3大于0,取?后的值赋值给a
int a = (b>0)?10:20

instanceof运算符

该运算符用于操作对象实例,检查该对象是否指定对象(类或者接口),满足则返回true,反之为false
如:

String name ="Stuart";

//此处这里是返回 true
boolean result = name instanceof String 

运算符优先级

优先级 类型 操作符 关联性
1 符号 () [] . 从左到右
2 一元 +(正) -(负) ! ~ 从右到左
3 乘除 * / % 从左到右
4 加减性 + - 从左到右
5 移位 >> >>> << 从左到右
6 关系 > >= < <= instanceof 从左到右
7 相等 == != 从左到右
8 按位与 & 从左到右
9 按位异或 ^ 从左到右
10 按位或 | 从左到右
11 逻辑与 && 从左到右
12 逻辑或 || 从左到右
13 三目运算 ?: 从右到左
14 赋值 = += -= ^= %= /= ~= >>= <<= >>>= 从右到左
  • 优先级按照从高到低的顺序书写,也就是优先级为1的优先级最高,优先级14的优先级最低

  • 结合性是指运算符结合的顺序,通常都是从左到右。从右向左的运算符最典型的就是负号,例如3+-4,则意义为3加-4,符号首先和运算符右侧的内容结合。

  • 注意区分正负号和加减号,以及按位与和逻辑与的区别

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,133评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,682评论 3 390
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,784评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,508评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,603评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,607评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,604评论 3 415
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,359评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,805评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,121评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,280评论 1 344
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,959评论 5 339
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,588评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,206评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,442评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,193评论 2 367
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,144评论 2 352