亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Java > 正文

java代碼之謎運算符篇

2019-11-26 16:18:33
字體:
來源:轉載
供稿:網友
從最簡單的運算符加號(+)說起,加號(+)是個二元運算符――也就是說,加號只把兩個數聯接起來,從來不把第三個或者更多的聯接起來。
因此,“1加2加3” 在計算機中被表述為:
(1 + 2) + 3 // a或者
1 + (2 + 3) // b雖然我們通常寫做 1 + 2 + 3,但是并不意味這它和我們數學中的 1+2+3 是等價的。
那么數學中的 1+2+3 到底表示的是 a 呢,還是 b 呢?
如果計算機的求值是左結合的,那么此表達式等價于第一種a; 如果是右結合的,那么此表達式等價于第二種b。
1 + 2 + 3 簡單的理解就是 “把1、2、3加在一起”, 確實,在我們接觸到的數學里面,就是把三個數加起來。 但是在編程語言中,卻不僅僅這樣。
就像前面說的那樣,+號無法操作三個或者更多的數,參與加法運算的只能是兩個數。
順便說一句,正號、負號是一元運算符,雖然它們和二元運算符加、減用相同的符號, 但是他們卻是不同的,所以不要想當然的認為 +4 就等價于 0+4,其實它們不是等價的,
+4 是一個整數,但是 0+4 是一個加法表達式,這個表達式的求值結果正好是 +4。
在 java 中,我們可以寫 short a = +4,但是當我們寫 short a = 0 + 4 時則產生一個警告。
還有一個其它例子,同樣是關于 short 的,
short b = 1;
short b = b + 4; // 警告
short b += 4; // 無警告那么 1 + 2 + 3 是如何運算的呢? 在馮諾依曼體系架構的編程語言中, 這里有一個副作用――我習慣稱那些“計算機的運算過程與程序員的大腦思考過程不一樣時,則稱為副作用”(雖然書本里面沒有這么寫過,但我一向這么認為), 本來你以為會是這樣,結果計算機偏偏就不是這樣做的,我稱他為副作用。
如果看過前面的『語句與表達式』,這可以這么理解:
1 + 2 是一個表達式,它的返回值是 3。 這個表達式的返回值再參加到另一個表達式中 3 + 3,最后得出結果6。
我們用語句(Statement)來改寫這段代碼:
// 計算 1 + 2 + 3
var a = 1 + 2;
var b = a + 3;如果我們用 lisp 語言對這個表達式求值,則沒有副作用。
(+ (+ 1 2) 3)如果你還沒有懂,或者這個例子太有特殊性,那么我們換一個
5 > 4 > 3在數學中,這個算式的值為 true。當我們用C語言來寫這段代碼,它返回的確實 false。
原因和上面的一樣,大于號(>)是二元運算,它無法直接比較三個數,5 > 4 返回的結果是 true, 當用 true 和 3 比較時,true 被轉換稱 1,也就是 1 > 3,最終的結果自然就是 false 了。
總之,回歸到了『語句與表達式』篇的那個觀點:在編程語言中 每個表達式都有一個值。
編程語言中的運算符和數學中的運算器雖然一樣,但是它們卻并不等同。 當你寫程序時,要寫給人看; 當你調試程序時,要學會用計算機的方式思考代碼的含義。
我習慣于把運算符理解為函數,比如 2 + 5 其實就是 add(2, 5) 或者 2.add(5)。 難道我會偷偷的告訴你 “其實很多語言都是這么做的”。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久精品亚洲一区| 一区二区三区高清国产| 欧美插天视频在线播放| 疯狂蹂躏欧美一区二区精品| 国产99久久精品一区二区| 成人有码视频在线播放| 不用播放器成人网| 亚洲高清福利视频| 成人激情电影一区二区| 国产亚洲欧美日韩一区二区| 国产精品久久电影观看| 91av在线免费观看视频| 一区二区三区高清国产| 成人免费观看49www在线观看| 91精品国产99久久久久久| 亚洲一区中文字幕在线观看| 欧美日韩在线视频观看| 亚洲精品国产精品国自产观看浪潮| 亚洲最大的网站| 精品调教chinesegay| 伊是香蕉大人久久| 最近更新的2019中文字幕| 中文日韩在线视频| 俺去了亚洲欧美日韩| 日韩电影中文 亚洲精品乱码| 成人黄色中文字幕| 91日韩在线视频| 国产欧美日韩精品专区| 欧美一级黑人aaaaaaa做受| 精品一区二区三区四区| 精品国产精品三级精品av网址| 国产精品久久中文| 97在线观看免费| 亚洲第一在线视频| 欧美中文在线观看| 欧美日产国产成人免费图片| 欧美日韩视频免费播放| 亚洲国产精品人人爽夜夜爽| 精品国内自产拍在线观看| 午夜精品一区二区三区在线视频| 亚洲跨种族黑人xxx| 欧美成人午夜激情视频| 亚洲国产第一页| 国产婷婷97碰碰久久人人蜜臀| 日韩二区三区在线| 国产欧美最新羞羞视频在线观看| 欧美精品videos性欧美| 色偷偷av一区二区三区乱| 欧美激情精品在线| 伊人久久久久久久久久久久久| 欧美高清无遮挡| 欧美诱惑福利视频| 亚洲天堂第一页| 国产亚洲精品久久久久久777| 亚洲色图狂野欧美| 亚洲v日韩v综合v精品v| 亚洲午夜未满十八勿入免费观看全集| 91亚洲精品久久久久久久久久久久| 97视频在线观看网址| 日本sm极度另类视频| 久久中文字幕在线| 久久av红桃一区二区小说| 久久精品国产精品亚洲| 国产精品com| 青青草成人在线| 中文字幕一区电影| 欧美性视频在线| 日韩二区三区在线| 欧美黑人xxxx| 欧美老少配视频| 中文字幕亚洲一区二区三区五十路| 欧美老女人在线视频| 亚洲аv电影天堂网| 北条麻妃在线一区二区| 97在线看免费观看视频在线观看| 欧美性猛交xxxx免费看漫画| 国产精品夜间视频香蕉| 亚洲欧美国产一区二区三区| 久久视频在线看| 亚洲精品国产综合区久久久久久久| 日韩电影中文字幕在线| 欧美性猛交xxxx乱大交| 精品国产欧美一区二区五十路| 亚洲国产日韩欧美在线99| 久久99精品视频一区97| 日韩免费在线观看视频| 欧美xxxx14xxxxx性爽| 欧美一级视频在线观看| 九九久久久久99精品| 亚洲国产99精品国自产| 国产欧美日韩中文字幕| 亚洲在线第一页| 色悠悠久久88| 成人福利视频在线观看| 欧洲美女免费图片一区| 在线播放亚洲激情| 欧美性猛交xxxx乱大交3| 国产va免费精品高清在线| 热久久美女精品天天吊色| 精品动漫一区二区| 国产欧美最新羞羞视频在线观看| 久久五月天综合| 亚洲欧美成人一区二区在线电影| 久热99视频在线观看| 亚洲精品国偷自产在线99热| 一区二区三区视频在线| 国产精品男人爽免费视频1| 日韩av在线网页| 国产国产精品人在线视| 欧美久久精品午夜青青大伊人| 国模叶桐国产精品一区| 国产www精品| 热99在线视频| 中文字幕亚洲激情| 欧美乱人伦中文字幕在线| 亚洲欧洲一区二区三区久久| 国产精品久久999| 成人h片在线播放免费网站| 欧美在线www| 69久久夜色精品国产69| 欧美性xxxx在线播放| 国产精品久久久久7777婷婷| 亚洲成人久久电影| 91视频8mav| 日本亚洲欧洲色α| 国内外成人免费激情在线视频| 亚洲在线一区二区| 日韩中文字幕视频在线观看| 久久精品美女视频网站| 欧美大片在线看免费观看| 亚洲国产毛片完整版| 亚洲视频自拍偷拍| 久久躁日日躁aaaaxxxx| 中文字幕视频一区二区在线有码| 久久av中文字幕| 91精品视频免费观看| 亚洲精品一区二区久| 亚洲一区中文字幕| 亚洲人成啪啪网站| 欧美激情一区二区三区在线视频观看| 精品亚洲男同gayvideo网站| 91社区国产高清| 欧美成人免费播放| 亚洲国产精品电影在线观看| 成人免费网站在线看| 日韩动漫免费观看电视剧高清| 91视频国产高清| 欧美亚洲伦理www| 一区二区日韩精品| 91最新国产视频| 亚洲欧洲一区二区三区在线观看| 国产精品免费一区二区三区都可以| 欧美性猛交xxxx富婆| 国产婷婷成人久久av免费高清| 高清在线视频日韩欧美| 欧美成年人视频| 亚洲天堂视频在线观看| 亚洲影院色无极综合| 欧美一区二区视频97| 日本韩国欧美精品大片卡二| 亚州成人av在线| 国产精品久久9| 亚洲欧美国产日韩天堂区| 国产视频精品免费播放|