大家好,我又來寫博客了~今天的內(nèi)容還是接著上次的一樣,講分支結(jié)構(gòu),當(dāng)然了,很多人說我這里面的博客只有Java,沒有Android,別著急,很快就會有的。而且,可能是對于大家來說,提升階段的Android博客。
四、if
說到if呢,很多人應(yīng)該都知道意思是什么,就是如果的意思。那么我們先來看一段代碼,之后再來品鑒一下這個if的真正含義。
int a = 10 ;
int b = 11 ;
if(a>b){
System.out.println("a大于b");
}
System.out.println("我說一句話,你聽著。");
很簡單的幾行代碼,前兩行就不說了,就是定義了兩個變量。那么從第三行開始,if這個關(guān)鍵字是我們從來都沒有見過的。那么下面我們來看一下他的輸出結(jié)果
我說一句話,你聽著。
從輸出結(jié)果上可以看到,加了if之后,"a大于b"這句話并沒有輸出。沒錯,if就是這樣的用法,if后面的括號中,我們發(fā)現(xiàn)最終得到的結(jié)果是個布爾值的變量,那么當(dāng)括號中的布爾值變量為真的情況下,會執(zhí)行if后代碼塊中的代碼,如果if括號中布爾值變量為假的話,則不會執(zhí)行代碼塊中的代碼。畫個簡單的流程圖我們來看看。
很簡單對吧。
五、if與else
如果有了,那么我們平常說話的時候,如果一般都跟否則連用,所以else也就誕生了。這個可以在if的基礎(chǔ)上進(jìn)行理解,我們做一個簡單的程序,就很好理解了。
int a = 10 ;
int b = 11 ;
if(a>b){
System.out.println("a>b");
}else{
System.out.println("a<b");
}
System.out.println("我說一句話,你聽著。");
那么這一段代碼的輸出結(jié)果是什么呢?猜也應(yīng)該能猜出來。
a<b
我說一句話,你聽著。
六、if與else if與else
還是一樣的,看一行代碼,我們來理解一下。場景也很好安排,就拿成績來說。
// 班里a同學(xué)的考試成績是95
// 判斷一下是優(yōu)秀,及格,不及格
int a = 95;
if(a>90){
System.out.println("a同學(xué)成績?yōu)閮?yōu)秀");
}else if(a>60&&a<=90){
System.out.println("a同學(xué)成績?yōu)榧案?);
}else{
System.out.println("a同學(xué)成績?yōu)椴患案?);
}
輸出的結(jié)果是
a同學(xué)成績?yōu)閮?yōu)秀
通過這個例子,我們也能看出來,其實if也好else if或者else也好,都是一種判斷,和生活中的例子特別像。通過上面代碼的組合,我們發(fā)現(xiàn),它可以使代碼產(chǎn)生分流的作用。所以被稱之為分支結(jié)構(gòu)。
這個地方有些同學(xué)可能記不住,哪個后面有判斷用的括號。那么告訴大家一個很好記錄的方法,只要看見if,后面必定加上判斷用的括號~
七、switch
switch也是一個分支結(jié)構(gòu),我們先來看看他在代碼中的運用。
int a = 2;
switch(a){
case 0:
System.out.println("00000");
break;
case 1:
System.out.println("11111");
break;
case 2:
System.out.println("22222");
break;
default:
System.out.println("找不到你想要的結(jié)果");
break;
}
輸出結(jié)果
22222
從上面的代碼我們應(yīng)該能看出來,switch是一種選擇結(jié)構(gòu),就像我們平常考試的時候,會做選擇題,當(dāng)然是單選,那么最終的結(jié)果,必然從已知的ABCD這四個答案中做出選擇。
這個地方我們要注意兩個點
1.switch后面的括號中只能是整型或者char類型,當(dāng)然也有特殊,java7以后,可以使用String類型。但是通常情況下,我們還是不太用String類型。所以這里大家了解就行。
2.break的作用:大家可以先嘗試一下如果不加break會出現(xiàn)什么問題,之后你應(yīng)該就能恍然大悟了。break的作用就是打斷判斷,如果沒有break,switch判斷會在選擇后,繼續(xù)往下運行,而不會因為case 1,case 2影響。
if與switch的區(qū)別是什么?
if更多的運用在范圍選擇上,還有boolean值變量上的比較多。
而switch就是選擇。有幾個固定選項的那種。
當(dāng)然if是可以替代switch的,但是switch卻替代不了if,所以在使用的時候,更多人喜歡用if,但是說句實話,如果你switch用的好的話,是會給你加分的哦~
if的圖畫的不好,請大家輕噴。后面其實也是可以加圖的,但是,畫圖好累。還是請大家輕噴。