第二章 java基礎(chǔ)(條件運(yùn)算符)

—— 本文參照 Learn Java for Android Development (第三版)

最近好多在群里說android要退了姻报,將要跟Chorme合并了禾锤,android將何去何從呢规伐。明未。疚脐。溪烤。但是作為一個程序員我只能簡單地做好我能做的事情萍鲸,我沒法去想那么多還沒有發(fā)生的事情闷叉。
條件運(yùn)算符
條件運(yùn)算符主要有條件與(&&),條件或(||)脊阴,條件運(yùn)算符(握侧?:)。前面兩個條件運(yùn)算符首先會判斷運(yùn)算符左邊的操作數(shù)嘿期,然后再根據(jù)左邊的判斷結(jié)果來選擇是否再對右邊的進(jìn)行判斷品擎。第三個操作符的結(jié)果由第三個布爾操作數(shù)決定。
條件與運(yùn)算符的左邊操作數(shù)如果是true的話會判斷右邊的操作數(shù)备徐,否者的話就不對右邊的操作數(shù)進(jìn)行判斷萄传。例如:age > 64 && stillWorking,首先我們會判斷age > 64蜜猾,如果這個子表達(dá)式為真的話盲再,就會對stillWorking的真假進(jìn)行判斷,stillWorking值就代表了真?zhèn)€表達(dá)式的真假瓣铣。如果age > 64 如果為假的話答朋,stillWorking 就不進(jìn)行判斷了。
條件或運(yùn)算符的左邊操作數(shù)為false的話我們才會去判斷右邊的操作數(shù)棠笑,否者的話就不對右邊的操作數(shù)進(jìn)行判斷梦碗,例如:value < 20 || value > 40,首先判斷子表達(dá)式value < 20,如果子表達(dá)式為flase的話就對value > 40進(jìn)行判斷洪规,value > 40也決定了整個表達(dá)式的值印屁。如果value < 20本來就為真的話那么value > 40就不進(jìn)行判斷了。
條件與和條件或其實在某種意義上提高了運(yùn)算效率斩例,因為在很多運(yùn)算表達(dá)式里面我們只需要對表達(dá)式的前半部分做出判斷就可以了雄人,例如,如果條件與的左邊操作數(shù)已經(jīng)是false念赶,那么無論右邊的操作數(shù)是什么都影響不了整個表達(dá)式的結(jié)果為false的事實了础钠。
在實際的開發(fā)中如果沒有注意到上面的內(nèi)容的話可能會犯錯。比如這樣子的一個表達(dá)式:age > 64 &&++numEmployees > 5叉谜,這個表達(dá)式的本意是想條件與運(yùn)算結(jié)束以后numEmployees 能增加1旗吁,但是在實際的運(yùn)算過程中只有那些age>64的情況numEmployees才會加1,因為如果age小于等于64的話后面的表達(dá)式就不會做判斷了停局。
條件運(yùn)算符還有一個很大的用處很钓,那就是通過一個表達(dá)式然后返回兩個操作數(shù)中的一個的時候,下面的例子是通過判斷一個布爾變量然后用1或者0作為這個變量的返回值:
boolean b = true;
int i = b ? 1 : 0; //結(jié)果是1被賦值給了i
下面用一段代碼來實際體驗一些條件操作符:
public class Test
{
public static void main(String[] args)
{
int age = 65;
boolean stillWorking = true;
System.out.println(age > 64 && stillWorking);
age--;
System.out.println(age > 64 && stillWorking);
int value = 30;
System.out.println(value < 20 || value > 40);
value = 10;
System.out.println(value < 20 || value > 40);
int numEmployees = 6;
age = 65;
System.out.println(age > 64 && ++numEmployees > 5);
System.out.println("numEmployees = " + numEmployees);
age = 63;
System.out.println(age > 64 && ++numEmployees > 5);
System.out.println("numEmployees = " + numEmployees);
boolean b = true;
int i = b ? 1 : 0; // 1 assigns to i
System.out.println("i = " + i);
b = false;
i = b ? 1 : 0; // 0 assigns to i
System.out.println("i = " + i);
}
}
編譯javac Test.java
執(zhí)行 java Test
結(jié)果如下:
true
false
false
true
true
numEmployees = 7
false
numEmployees = 7
i = 1
i = 0

Page 61

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末董栽,一起剝皮案震驚了整個濱河市码倦,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌锭碳,老刑警劉巖叹洲,帶你破解...
    沈念sama閱讀 206,311評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異工禾,居然都是意外死亡运提,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評論 2 382
  • 文/潘曉璐 我一進(jìn)店門闻葵,熙熙樓的掌柜王于貴愁眉苦臉地迎上來民泵,“玉大人,你說我怎么就攤上這事槽畔≌蛔保” “怎么了?”我有些...
    開封第一講書人閱讀 152,671評論 0 342
  • 文/不壞的土叔 我叫張陵厢钧,是天一觀的道長鳞尔。 經(jīng)常有香客問我,道長早直,這世上最難降的妖魔是什么寥假? 我笑而不...
    開封第一講書人閱讀 55,252評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮霞扬,結(jié)果婚禮上糕韧,老公的妹妹穿的比我還像新娘枫振。我一直安慰自己,他們只是感情好萤彩,可當(dāng)我...
    茶點故事閱讀 64,253評論 5 371
  • 文/花漫 我一把揭開白布粪滤。 她就那樣靜靜地躺著,像睡著了一般雀扶。 火紅的嫁衣襯著肌膚如雪杖小。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,031評論 1 285
  • 那天愚墓,我揣著相機(jī)與錄音予权,去河邊找鬼。 笑死转绷,一個胖子當(dāng)著我的面吹牛伟件,可吹牛的內(nèi)容都是我干的硼啤。 我是一名探鬼主播议经,決...
    沈念sama閱讀 38,340評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼谴返!你這毒婦竟也來了煞肾?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,973評論 0 259
  • 序言:老撾萬榮一對情侶失蹤嗓袱,失蹤者是張志新(化名)和其女友劉穎籍救,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體渠抹,經(jīng)...
    沈念sama閱讀 43,466評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡蝙昙,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,937評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了梧却。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片奇颠。...
    茶點故事閱讀 38,039評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖放航,靈堂內(nèi)的尸體忽然破棺而出烈拒,到底是詐尸還是另有隱情,我是刑警寧澤广鳍,帶...
    沈念sama閱讀 33,701評論 4 323
  • 正文 年R本政府宣布荆几,位于F島的核電站,受9級特大地震影響赊时,放射性物質(zhì)發(fā)生泄漏吨铸。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,254評論 3 307
  • 文/蒙蒙 一祖秒、第九天 我趴在偏房一處隱蔽的房頂上張望焊傅。 院中可真熱鬧剂陡,春花似錦、人聲如沸狐胎。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽握巢。三九已至晕鹊,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間暴浦,已是汗流浹背溅话。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留歌焦,地道東北人飞几。 一個月前我還...
    沈念sama閱讀 45,497評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像独撇,于是被迫代替她去往敵國和親屑墨。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,786評論 2 345

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

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法纷铣,類相關(guān)的語法卵史,內(nèi)部類的語法,繼承相關(guān)的語法搜立,異常的語法以躯,線程的語...
    子非魚_t_閱讀 31,581評論 18 399
  • 【程序1】 題目:古典問題:有一對兔子,從出生后第3個月起每個月都生一對兔子啄踊,小兔子長到第三個月后每個月又生一對兔...
    葉總韓閱讀 5,126評論 0 41
  • Java經(jīng)典問題算法大全 /*【程序1】 題目:古典問題:有一對兔子忧设,從出生后第3個月起每個月都生一對兔子,小兔子...
    趙宇_阿特奇閱讀 1,844評論 0 2
  • 第一章 初識javaJAVA 第一講:什么是程序?:為了讓計算機(jī)執(zhí)行某些操作或解決某個問題而編寫的一系列有序指令的...
    人子日月幾點閱讀 509評論 0 1
  • 我拿掉了我的臉颠通,安在你的臉上址晕。我沒有臉,白茫茫一片蒜哀,你變成了我的模樣斩箫。
    great閱讀 189評論 0 1