日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java学习笔记(五)--流程控制

發布時間:2025/3/21 java 13 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java学习笔记(五)--流程控制 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • Java語言基礎(三)
    • 一、流程控制
      • 1.1 復合語句
      • 1.2 條件語句
        • 1.2.1 if條件語句
    • 二、switch多分支語句
    • 三、循環語句
      • 3.1 while 循環語句
      • 3.2 do ··· while 循環語句
      • 3.3 for 循環語句
    • 四、循環控制
      • 4.1 break 語句
      • 4.2 continue 語句
    • 注意:
      • 1、兩個浮點數值的相等測試
      • 2、java標簽

Java語言基礎(三)

一、流程控制

1.1 復合語句

Java語言的符合語句是以整個塊區為單位的語句,所以又稱塊語句。復合語句由開括號“ { ” 開始,閉括號 “ } ”結束。復合語句中的每個語句都是從上到下被執行。復合語句以整個塊為單位,能夠用在任何個單獨語句可以用到的地方,并且在復合語句中還可以嵌套復合語句。

使用復合語句時,復合語句為局部變量創建了一個作用域,該作用域作為程序的一部分,在該作用域中某個變量被創建并能夠被使用。如果在某個變量的作用域外使用該變量,則會發生錯誤。

1.2 條件語句

1.2.1 if條件語句

1、簡單的if條件語句

if(布爾表達式) {語句序列 }
  • 布爾表達式:可以是一個單純的布爾變量或常量,也可以是使用關系或布爾運算符的表達式。
  • 語句序列:一條或多條語句。如果布爾表達式的值為 true,則執行 if 語句中的代碼塊,否則執行 if 語句塊后面的代碼。若語句序列僅有一條語句,則可以省略條件語句中的 “ { } ”。

條件語句后面的語句序列省略時,可以保留外面的大括號;也可以省略大括號,然后在末尾添加 “ ;”。如下所示兩種情況都是正確的。

boolean b = false; if(b); //另一種寫法 boolean b = false; if(b){}

2、if···else語句

if(布爾表達式) {若干語句 } else {若干語句 }

如果布爾表達式的值為 true,則執行緊跟if語句的復合語句,如果表達式的值為false,則執行else語句后面的復合語句。

對于if···else語句可以使用三元運算符對語句進行簡化,如下面代碼:

if(a>0)b = a; elseb = -a; //可以簡寫成: b = a>0? a: -a;

3、if···else if 多分支語句

if(布爾表達式 1){語句序列1 } else if(布爾表達式 2){語句序列2 } ··· else if(布爾表達式 n){語句序列n } else {語句序列m }

當條件表達式1的值為true時,執行語句序列1;當條件表達式為true時,執行語句序列2,依次類推。當所有else if的條件表達式都不成立時,則執行else后的語句序列m。當省略任意一組語句序列時,可以保留其外的“ { } ”,也可以將 “ { } ” 替換為 “ ;”。最多只能有一個else語句,并且必須放在最后。不需要時else語句可以省略。

二、switch多分支語句

檢測一個變量是否符合某個條件,如果不符合,再用另一個值來檢測,以此類推。這樣的問題也可使用switch語句。

switch(expression){case value0 ://語句break; //可選case value1 ://語句break; //可選···default : //可選//語句 }
  • switch 語句中的變量類型可以是:整型、字符型或字符串類型

  • value 必須為整型、字符型或字符串類型的常量值,不能為實數,一個語句里 case 的常量值必須互不相同。

  • switch 語句可以擁有多個 case 語句。每個 case 后面跟一個要比較的值和冒號。

  • case 語句中的值的數據類型必須與變量的數據類型相同,而且只能是常量或者字面常量。

  • 當變量的值與 case 語句的值相等時,那么 case 語句之后的語句開始執行,直到 break 語句出現才會跳出 switch 語句。

  • 當遇到 break 語句時,switch 語句終止。程序跳轉到 switch 語句后面的語句執行。case 語句不必須要包含 break 語句。如果沒有 break 語句出現,程序會繼續執行下一條 case 語句,直到出現 break 語句,或運行完所有語句。

  • switch 語句可以包含一個 default 分支,該分支一般是 switch 語句的最后一個分支(可以在任何位置,但建議在最后一個)。default 在沒有 case 語句的值和變量值相等的時候執行。default 分支不需要 break 語句。

  • switch case 執行時,一定會先進行匹配,匹配成功返回當前 case 的值,再根據是否有 break,判斷是否繼續輸出,或是跳出判斷。

三、循環語句

循環語句就是在滿足一定條件的情況下個反復執行某一個操作。Java 提供了3種常用的循環語句,分別是 while 循環語句、do···while 循環語句和 for 循環語句。

3.1 while 循環語句

while 語句也稱條件判斷語句,它的循環方式為利用某一個條件來控制是否要繼續反復執行這個語句。

while(條件表達式) {執行語句 }

當條件表達式的返回值為真時,則執行 “ { } ” 中的語句,當執行完 “ { } ”中的語句后,重新判斷條件表達式的返回值,直到表達式返回的結果為假時,退出循環。

注意while表達式的括號后加 “ ;”,表示程序要執行一條空語句,而進入無限循環。

while(表達式);

3.2 do ··· while 循環語句

do ··· while 語句與while 語句類似,他們之間的區別是 while 語句先判斷條件是否成立再執行循環體,而 do ··· while 循環語句則先執行一次循環,再判斷條件是否成立。也就是說, do ··· while 循環語句中 “ { } ” 中的程序至少要被執行一次。

do {執行語句 }while(條件表達式);

書寫時要注意 do ··· while 語句在結尾處多了一個分號(;)。

3.3 for 循環語句

一個for循環可以用來重復執行某條語句,知道某個條件得到滿足。

for(表達式1;表達式2;表達式3) {語句序列 }
  • 表達式1:初始化表達式,負責完成變量的初始化;
  • 表達式2:循環條件表達式,值為 boolean 型的表達式,指定循環條件;
  • 表達式3:循環后操作表達式,負責修整變量,改變循環條件。

在執行 for 循環時,首先執行表達式1,完成某一變量的初始化工作;下一步判斷表達式2的值,若表達式2的值為true,則進入循環體;在執行完循環體后緊接著計算表達式3,這部分通常是增加或減少循環控制變量的一個表達式。這樣一輪循環就結束了。第二輪循環從表達式2開始,若表達式2返回true,則繼續循環,否則跳出整個 for 語句。


for 語句中的根據情況表達式可以省略,比如使用 for 循環來實現無限循環。

for(;;) {··· } //對于種種循環可以通過 break 語句跳出循環。 for(;;) {if(條件表達式)break;··· }

for each 遍歷

for each 循環是對 for 語句遍歷數組等方面的特殊簡化版本的稱呼。

for(元素變量x: 遍歷對象odj) {引用了x的Java語句; }

該變量x的類型必須和數組元素的類型匹配,其作用域限定在循環語句塊,其值與此時數組元素的值相等。遍歷對象是要訪問的數組名,或者是返回值為數組的方法。foreach 語句中的元素變量x,不必對其進行初始化。

四、循環控制

循環控制包含兩個方面的內容:一方面是控制循環變量的變化方式,另一方面是控制循環的跳轉。控制循環的跳轉需要用到 break 和 continue 兩個關鍵字。break 是中斷循環,continue 是執行下一次循環。

4.1 break 語句

使用 break 語句可以跳出 switch 結構,在循環結構中,同樣可以使用 break 語句跳出當前循環體,從而中斷當前循環。

brake;

當遇到循環嵌套的情況,break 語句只會使程序跳出包含它的最內層的循環結構,只跳出一層循環。如果想讓 break 跳出外層循環,Java提供了 “標簽” 的功能。

標簽名 : 循環體 {break 標簽名; }
  • 標簽名:任意標識符;
  • 循環體:任意循環語句;
  • break 標簽名:break 跳出指定的循環體,此循環體的標簽名必須與break 后的標簽名一致。

4.2 continue 語句

continue 不是立即跳出循環體,而是跳過本次循環結束當前的語句,回到循環的條件測試部分,從新開始執行循環。在 for 循環語句中遇到 continue 后,首先執行循環的增量部分,然后進行條件測試。在 while 和 do ··· while 語句使控制直接回到條件測試部分。

continue;

continue 也支持標簽功能:

標簽名 : 循環體 {continue 標簽名; }
  • 標簽名:任意標識符;
  • 循環體:任意循環語句;
  • continue 標簽名:continue 跳出指定的循環體,程序從標簽名位置繼續執行下一次循環。此循環體的標簽名必須與 continue 后的標簽名一致。

注意:

1、兩個浮點數值的相等測試

檢測兩個浮點數是否相等要各位小心。浮點數具有有限的計算精度,涉及浮點數的計算可能引入取整錯誤。

雖然不能依賴兩個浮點數值的相等測試,但是可以通過測試兩個數的差距小于某個閾值,來比較它們是否已經足夠接近。也就是,對于一個非常小的值 ε,如果 |x-y|<ε ,那么 x 和 y 非常接近。ε 是一個讀為 “ epsilon” 的希臘字母,常用于表示一個非常小的值。通常,將 ε 設為 10(^-14) 來比較兩個 double 類型的值,而設為 10^-7 來比較兩個float 類型的值。

2、java標簽

標簽可以用到任何語句中,甚至可以應用到 if 語句或者塊語句中。

總結

以上是生活随笔為你收集整理的Java学习笔记(五)--流程控制的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。