Java怎麼將數據變得有邏輯(1)—控制語句(各個循環語句的比較)

一、思維導圖

二、 爲什麼出現控制語句?

控制語句會讓程序更加有邏輯性,可以使用控制語句寫一個“邏輯”,控制語句通過接受變量(數據)然後按照程序員的想法,可以對數據進行一個操控,更加符合程序員的需求。

三、條件語句

(一)if語句的語法結構和原理?

if語句是分支語句,也可以叫做條件語句。

(1)if語句的語法格式:

		第一種寫法:
			If(布爾表達式){
				java語句;
				java語句;
			}
		第二種寫法:
			If(布爾表達式){
				java語句;
				java語句;
			}else{
				java語句;
			}
		第三種寫法:
			If(布爾表達式){
				java語句;
				java語句;
			}else if(布爾表達式){
				java語句;
			}
			else if(布爾表達式){
				java語句;
			}
		第四種寫法:
			If(布爾表達式){
				java語句;
				java語句;
			}else if(布爾表達式){
				java語句;
			}
			else if(布爾表達式){
				java語句;
			}else{
			}
			

注意:(a)對於if語句來說,在任何情況下,只能執行一個分支,不可能存在2個或者更多的分支執行,if語句只要有一個分支執行了,這個if語句就結束了。

(b)當分支當中“java語句”只要1條,那麼大括號{}可以省略

(2)以上if語句的執行原理?

先判斷布爾表達式1,如果結果爲true,則執行分支1,然後if語句結束,當布爾表達式1的結果爲false,如果語句有else,則走else,沒有則結束。

(二)switch語句

(1)switch語句的語法格式:

Switch(值){

Case 值1:
	java語句;
	java語句;
	Break;
Case 值2:
	java語句;
	java語句;
	Break;
Case 值3:
	java語句;
	java語句;
	Break;
Default:
	java語句;

}

注意:

注意:(a)以上是一個完整的switch語句,其中:break;語句不是必須的,default分支也不是必須。

(b)switch語句支持的數據類型有哪些?

支持int類型以及string類型。switch語句本質上只支持int和string,但是byte,short,char也可以使用switch語句當中,因爲byte short char可以進行自動類型轉換。

(c)switch語句中"值"與"值1"、"值2"比較的時候會使用"=="進行比較。

  (d )case合併的問題

Case 1: case2 : case 3:

(2)swtich語句的執行原理

拿"值"與"值1"進行比較,如果相同,則執行該分支中的java語句,然後遇到break;語句,switch語句就結束了,

如果不想同,會繼續比較“值2",如果沒有break,會發生case穿透,也就是說,如果我值和值3相同了,執行case語句,然後沒有break,會直接進行case4裏面的語句。

如果所有的case語句沒有執行,則會執行default分支語句。

四、循環語句

(1)什麼是循環語句,爲什麼要使用這種語句?

因爲在現實生活中,有很多事情都要需要反覆/重複去做。

(2)for循環執行原理?

循環語句的出現就是爲了解決代碼的複用問題,這和變量有異曲同工之妙,

For(初始化表達式;布爾表達式;更新表達式){

循環體;//循環體由Java語句構成

}

注意:(1)初始化表達式最先執行,並且在整個循環中只執行一次。(2)條件表達式結果必須是布爾類型,也就是true或者false。

 

 

先執行初始化表達式,並且只執行1次,然後判斷條件表達式的結果,如果爲true,則執行循環體,然後執行更新表達式,再判斷條件表達式的結果,只到判斷表達式的執行結果爲false,則執行結束。所以更新表達式的出現是爲了控制循環的次數。

(3)while語句的執行原理

		While(布爾表達式){
		
			循環體;
		}

執行原理:

判斷布爾表達式的結果,如果爲true就執行循環體,循環體結束之後,再次判斷布爾表達式的結構,如果還是ture,則繼續執行循環體,只到布爾表達式的結果爲false。

(4)do...while循環語句的執行原理以及語法機制

		Do{
			循環體;
}while (布爾表達式);

注意:do..while循環最後的時候還有;號,其他的沒有,因爲其他的是大括號結束的

大括號代表一種結束。

執行原理:

先去執行循環體當中的代碼,然後再去判斷布爾表達式的結果,如果爲true,則繼續執行,如果爲false,則結束。

(5)for、while、do...while()的比較

(a)for、while循環在本質上都是一樣的,都是先進行判斷然後,如果爲true則執行,否則就不執行,但是do...while():它就比較特殊了,它先執行再進行判斷。

(b)for、while後面都是跟着{},但是do...while();後面是小括號,所以需要加上;,大括號的另一種含義就是結束的意思。】

五、轉向語句

(一)break語句

(1)一個單詞成爲一個完整的語句。

(2)break;語句用來哪裏呢?

第一個位置:switch語句當中,用來終止switch語句的執行。

用在switch語句當中,防止case穿透現象,用來終止switch。

第二個位置:用在f循環中,用來終止循環,離它最近的循環,外面的循環並不會結束。

For(int I =0; i<10; i++){

If(i==5){

Break;

}

}

(二)continue語句

1)作用:終止當前"本次”循環,直接進入下一次循環繼續執行。

For(){

If(){ //當這個條件成立時,執行continue語句

continue;//當這個continue語句執行時,continue下面的代碼不執行

}

//以上的continue一旦執行,以下代碼不執行,直接執行更新表達式。

Code1;

Code2;

Code3;

}

總結:控制語句是JAVA基礎中特別特別重要的,因爲它控制着數據的邏輯,所以我們在寫程序的時候,大部分都會用到控制語句。

這是我第二遍看Java基礎視頻,第一遍在yiqing期間在家看的,感覺在家看沒有掌握什麼知識,所以又看了第二遍,第二遍是在機房看的,第二遍明顯感覺要比第一遍好的太多了。儘管可能走的太慢了,但是只要能把東西掌握了就行了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章