java基礎(chǔ)知識(shí)


title: java基礎(chǔ)知識(shí)
tags: [java基礎(chǔ)知識(shí)]


位運(yùn)算符

java種的運(yùn)算符有 “&”,“|”,“~”,“^”即 “與”滔吠、“非”、“或”、“異或”

這幾種運(yùn)算符都需要將判斷的字符轉(zhuǎn)換成2進(jìn)制,

& 且運(yùn)算符

兩個(gè)操作數(shù)中位數(shù)都為1伐割,結(jié)果才為1,否則為0
如 int a = 9;
int b = 10;
9的二進(jìn)制是1001刃唤,10是1010口猜,&的結(jié)果是1000 即8

| 或運(yùn)算符

兩個(gè)位數(shù)只要一個(gè)為1,結(jié)果就是1透揣,否則為0
如 int a = 9;
int b = 10;
9的二進(jìn)制是1001,10是1010川抡,|的結(jié)果是1011 即11

~ 非運(yùn)算符

如果位數(shù)為0辐真,結(jié)果是1须尚,如果位數(shù)為1,結(jié)果是0
如 int a = 9;
9的二進(jìn)制是1001侍咱,~的結(jié)果是0110 即6

^ 異或運(yùn)算符

相對(duì)應(yīng)的位 相同則結(jié)果為0耐床,不同則結(jié)果為1
如 int a = 9;
int b = 10;
9的二進(jìn)制是1001,10是1010楔脯,^的結(jié)果是0011 即3

<< 按位左移運(yùn)算符

左操作數(shù)按位左移右操作數(shù)指定的位數(shù)撩轰。
如 20 << 2
20的二進(jìn)制補(bǔ)碼:0001 0100

>> 按位右移運(yùn)算符

左操作數(shù)按位右移右操作數(shù)指定的位數(shù)。

一些基礎(chǔ)概念

機(jī)器數(shù)

一個(gè)數(shù)在計(jì)算機(jī)中的二進(jìn)制表示形式昧廷,叫做這個(gè)數(shù)的機(jī)器數(shù)堪嫂,機(jī)器數(shù)是帶符號(hào)的,在計(jì)算機(jī)用一個(gè)數(shù)的最高位存放符號(hào), 正數(shù)為0, 負(fù)數(shù)為1
如 1的二進(jìn)制數(shù)計(jì)算機(jī)字長(zhǎng)位8位木柬,二進(jìn)制就是 0000 0001 皆串, -1就是 1000 0001

真值

因?yàn)榈谝晃皇欠?hào)位,所以機(jī)器數(shù)的形式值就不等于真正的數(shù)值眉枕。例如上面的有符號(hào)數(shù) 1000 0001恶复,其最高位1代表負(fù),其真正數(shù)值是 -1 而不是形式值129(1000 0001轉(zhuǎn)換成十進(jìn)制等于129)速挑。所以谤牡,為區(qū)別起見,將帶符號(hào)位的機(jī)器數(shù)對(duì)應(yīng)的真正數(shù)值稱為機(jī)器數(shù)的真值姥宝。
所以 0000 0001 的真值為 +000 0001 即 1
1000 0001 的真值為 -000 0001 即 -1

原碼

原碼就是符號(hào)位加上真值的絕對(duì)值, 即用第一位表示符號(hào), 其余位表示值. 比如如果是8位二進(jìn)制:
1的原碼 0000 0001
-1的原碼 1000 0001
8位二進(jìn)制的取值范圍則是[1111 1111, 0111 1111] 即 [-127, 127]

反碼

反碼就是將原碼除符號(hào)位以外的值全部取反翅萤,原來(lái)是1的變?yōu)?,原來(lái)是0的變?yōu)?
正數(shù)的反碼是其本身
如1的原碼是: 0000 0001
反碼是: 0000 0001

如-1的原碼是: 1000 0001
反碼是: 1111 1110

補(bǔ)碼

補(bǔ)碼就是在反碼的基礎(chǔ)上伶授,在二進(jìn)制數(shù)的右端末位加1(逢2進(jìn)1)
正數(shù)的補(bǔ)碼就是其本身
如1的原碼是: 0000 0001
反碼是: 0111 1110
補(bǔ)碼是: 0000 0001

如-1的原碼是: 1000 0001
反碼是: 1111 1110
補(bǔ)碼是: 1111 1111

參考連接

移位運(yùn)算

左移

數(shù)值的補(bǔ)碼全部往左移動(dòng)X位断序,符號(hào)位和最高位都舍棄,最低位補(bǔ)0
如 int a = 6;
int b = a << 2;
6的補(bǔ)碼: [0000 0000 0000 0000 0000 0000 0000 0110]
結(jié)果: [0000 0000 0000 0000 0000 0000 0001 1000] 即24

int a = -6;
int b = a << -6
-6的原碼: [1000 0000 0000 0000 0000 0000 0000 0110]
-6的反碼: [1111 1111 1111 1111 1111 1111 1111 1001]
-6的補(bǔ)碼: [1111 1111 1111 1111 1111 1111 1111 1010]
-6的左移動(dòng)2位: [1111 1111 1111 1111 1111 1111 1110 1000]
然后將補(bǔ)碼轉(zhuǎn)成原碼: 先補(bǔ)碼的反碼再加1
即 [1000 0000 0000 0000 0000 0000 0001 0111] =》 [1000 0000 0000 0000 0000 0000 0001 1000]
結(jié)果為 -24
左移n位就相當(dāng)于乘以2的n次方

右移

數(shù)值的補(bǔ)碼向右移X位糜烹,符號(hào)位不變(左邊補(bǔ)上符號(hào)位)
int a=8
int b=a>> 2
8的原碼 [0000 0000 0000 0000 0000 0000 0000 1000]
8向右移動(dòng)兩位 [0000 0000 0000 0000 0000 0000 0000 0010]
結(jié)果為 2

int a=-8
int b=a>> 2
-8的原碼 [0000 0000 0000 0000 0000 0000 0000 1000]
-8的反碼 [1111 1111 1111 1111 1111 1111 1111 0111]
-8的補(bǔ)碼 [1111 1111 1111 1111 1111 1111 1111 1000]
-8向右移動(dòng)兩位 [1111 1111 1111 1111 1111 1111 1111 1110]
然后取補(bǔ)碼的反碼 [1000 0000 0000 0000 0000 0000 0000 0001]
補(bǔ)碼的原碼 [1000 0000 0000 0000 0000 0000 0000 0010]
結(jié)果為 -2

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末违诗,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子疮蹦,更是在濱河造成了極大的恐慌诸迟,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,084評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件愕乎,死亡現(xiàn)場(chǎng)離奇詭異阵苇,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)感论,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門绅项,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人比肄,你說(shuō)我怎么就攤上這事快耿∧叶福” “怎么了?”我有些...
    開封第一講書人閱讀 163,450評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵掀亥,是天一觀的道長(zhǎng)撞反。 經(jīng)常有香客問(wèn)我,道長(zhǎng)搪花,這世上最難降的妖魔是什么遏片? 我笑而不...
    開封第一講書人閱讀 58,322評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮撮竿,結(jié)果婚禮上吮便,老公的妹妹穿的比我還像新娘。我一直安慰自己倚聚,他們只是感情好线衫,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,370評(píng)論 6 390
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著惑折,像睡著了一般授账。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上惨驶,一...
    開封第一講書人閱讀 51,274評(píng)論 1 300
  • 那天白热,我揣著相機(jī)與錄音,去河邊找鬼粗卜。 笑死屋确,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的续扔。 我是一名探鬼主播攻臀,決...
    沈念sama閱讀 40,126評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼纱昧!你這毒婦竟也來(lái)了刨啸?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,980評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤识脆,失蹤者是張志新(化名)和其女友劉穎设联,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體灼捂,經(jīng)...
    沈念sama閱讀 45,414評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡离例,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,599評(píng)論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了悉稠。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片宫蛆。...
    茶點(diǎn)故事閱讀 39,773評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖的猛,靈堂內(nèi)的尸體忽然破棺而出洒扎,到底是詐尸還是另有隱情辑甜,我是刑警寧澤,帶...
    沈念sama閱讀 35,470評(píng)論 5 344
  • 正文 年R本政府宣布袍冷,位于F島的核電站,受9級(jí)特大地震影響猫牡,放射性物質(zhì)發(fā)生泄漏胡诗。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,080評(píng)論 3 327
  • 文/蒙蒙 一淌友、第九天 我趴在偏房一處隱蔽的房頂上張望煌恢。 院中可真熱鬧,春花似錦震庭、人聲如沸瑰抵。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)二汛。三九已至,卻和暖如春拨拓,著一層夾襖步出監(jiān)牢的瞬間肴颊,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工渣磷, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留婿着,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,865評(píng)論 2 370
  • 正文 我出身青樓醋界,卻偏偏與公主長(zhǎng)得像竟宋,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子形纺,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,689評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容