Java區塊作用域、條件語句及switch語句怎麼用
塊作用域
在深入學習控制結構前,必須先了解塊的作用。
定義:由多條Java語句組成的語句,並用一對大括號括起來。
作用:區塊確定了變數的作用域,一個區塊可以嵌套在另一個區塊上。
實例:
package decom1; public class cuowu { public static void main(String[] args) { //第二个块嵌套在第一个块里面。 byte i = 12; //变量i只在第二个块区域内有作用包括嵌套里面的块。 { //第三个块嵌套在第二个块里面同时也在第一个块里面。 int a = 3; //变量a只在所在的块起到作用。 System.out.println(a); } //写在main(程序执行的入口)里面的代码块,就称为局部代码块。 //局部代码的作用:能够让变量更早的在内存中消失,节省内存空间。 System.out.println(i); } }
不能在嵌套的兩個區塊中宣告同名的變數。
實例:
package decom1; public class cuowu { public static void main(String[] args) { byte i = 12; { int i = 3; //报错:Duplicate local variable i } System.out.println(i); } }
條件語句
條件語句有三種格式,下面我來解密哪三種格式。
格式一
if(條件式) { 語句體; }
Java中條件語句的表現:
if(condition) statement
這裡的條件必須用小括號括起來。
條件表達式最終的結果只能是boolean類型,要嘛是true,要嘛是false。
流程:
1.如果程式執行到if語句的時候,會去看條件表達式的結果是true還是false。
2.如果是true,就會進入if中,執行裡面的語句體內容。
3.如果是false,就不會進入if中,就不會執行到裡面的語句體內容。
package com; public class liu { public static void main(String[] args) { int i = 1; int j = 2; if(i > j) { System.out.println(i); } System.out.println(j); //由于i>j不成立,所以不执行if里面的语句,直接跳过执行外面的语句。 } }
格式二
if(條件式){ 語句體; }else{ 語句體; }
語句表現:
if(condition) statement1 else statement2
#執行流程:
1.如果程式執行到if語句的時候,會去看條件表達式的結果是true還是false。
2.如果是true,就會進入if中,執行裡面的語句體內容。
3.如果是false,就不會進入if中,會進入到else中,執行裡面的語句體。
實例:
package com; public class liu { public static void main(String[] args) { //获取两个数的较大值 int i = 1; int j = 2; int max = 0; if(i > j) { max = i; //把i赋值给max } else { max = j; //把j赋值给max } System.out.println(max); //因为i>j条件为假,所以执行else里面的语句,所以max得到的数值为2。 } }
格式三(常用)
if(條件式){ 語句體; }else if{ 語句體; }…else {語句體;}
語句表達形式:
if…else if…
執行流程:
1.如果程式執行到if語句的時候,會去看條件表達式的結果是true還是false。
2.如果為true,就會執行if中的語句體內容,其他的語句體不會執行。
3.如果為false,就會繼續往下走,看else if的條件式的結果是true還是false。
4.如果是true,就進入elseif中,執行裡面的語句體內容。
5.如果是false,就繼續向下走…
6.如果if和所有的elseif中的條件表達式都為false,就會執行else中的語句體內容。
實例:
package com; public class liu { public static void main(String[] args) int a = 0; int i = 7; if(i > 8) { a = 1; } else if(i > 7) { a = 2; } else if(i > 6) { a = 3; } else { a = 4; } System.out.println(a); } }
switch語句
在處理多個選項時if條件語句顯著有些笨拙,這個時候有新的玩法更何樂而不為呢?下面我來介紹switch語句。
結構放在實例講,下面講一下執行流程:
1.當程式執行到switch的時候,會進入到switch,會找第一個case進行匹配,如果匹配成功,就進入case中執行。
2.裡面的語句體內容和break。如果沒有配對成功,會繼續往下走,找第二個case繼續配對… …。
3.如果所有的case都不匹配,最後會執行default中的語句體內容。
實例:
package com; public class liu { public static void main(String[] args) { int i = 3; switch(i) { case 1: System.out.println("1"); break; case 2: System.out.println("2"); break; case 3: System.out.println("3"); //i=3符合case 3所以就执行case里面的命令,其余语句则不管。 break; default: System.out.println("3"); break; } } }
case標籤:
#類型為char、byte、short或int的常數表達式。
枚舉常數。
從Java 7 開始,case標籤可以是字串字面量。
字元常數實例:
String input.... switch (input.tolowerCase()) { case "yes": ... break; ... }
警告:如果case分支語句結尾沒有break語句,那麼就會接著執行下一個case分支語句。
如果你容易忘記這個茬,可以在前面加上這個語句,這樣一來如果case後面少了一個break,在編譯的時候會提示錯誤。
javac -Xlint:fallthrough Test.java
#switch結束標誌:
##1.break##2.遇到結尾}
以上是Java區塊作用域、條件語句及switch語句怎麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undress AI Tool
免費脫衣圖片

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

testthepdfinanotherapptoderineiftheissueiswiththefileoredge.2.enablethebuilt inpdfviewerbyTurningOff“ eflblyopenpenpenpenpenpdffilesexternally”和“ downloadpdffiles” inedgesettings.3.clearbrowsingdatainclorwearbrowsingdataincludingcookiesandcachedcachedfileresteroresoreloresorelorsolesoresolesoresolvereresoreorsolvereresoreolversorelesoresolvererverenn

容器化Java應用:創建Dockerfile,使用基礎鏡像如eclipse-temurin:17-jre-alpine,複製JAR文件並定義啟動命令,通過dockerbuild構建鏡像並用dockerrun測試本地運行。 2.推送鏡像到容器註冊表:使用dockertag標記鏡像並推送到DockerHub等註冊表,需先登錄dockerlogin。 3.部署到Kubernetes:編寫deployment.yaml定義Deployment,設置副本數、容器鏡像和資源限制,編寫service.yaml創建

Importjava.ioandjava.net.SocketforI/Oandsocketcommunication.2.CreateaSocketobjecttoconnecttotheserverusinghostnameandport.3.UsePrintWritertosenddataviaoutputstreamandBufferedReadertoreadserverresponsesfrominputstream.4.Usetry-with-resourcestoautomati

VSCode中可通過快捷鍵快速切換面板與編輯區。要跳轉至左側資源管理器面板,使用Ctrl Shift E(Windows/Linux)或Cmd Shift E(Mac);返回編輯區可用Ctrl `或Esc或Ctrl 1~9。相比鼠標操作,鍵盤快捷鍵更高效且不打斷編碼節奏。其他技巧包括:Ctrl KCtrl E聚焦搜索框,F2重命名文件,Delete刪除文件,Enter打開文件,方向鍵展開/收起文件夾。

runthewindowsupdatetrubloubleshooterviaSettings>更新&安全> is esseShootsoAtomationfixCommonissues.2.ResetWindowSupDateComponentsByStoppingRealatedServices,RenamingTheSoftWaredWaredWaredSoftwaredSistribution andCatroot2Folders,intrestrestartingthertingthertingtherserviceSteStoceTocle

AwhileloopinJavarepeatedlyexecutescodeaslongastheconditionistrue;2.Initializeacontrolvariablebeforetheloop;3.Definetheloopconditionusingabooleanexpression;4.Updatethecontrolvariableinsidethelooptopreventinfinitelooping;5.Useexampleslikeprintingnumber

要有效使用Mockito進行Java單元測試,首先需添加Mockito依賴,Maven項目在pom.xml中加入mockito-core依賴,Gradle項目添加testImplementation'org.mockito:mockito-core:5.7.0';接著通過@Mock註解(配合@ExtendWith(MockitoExtension.class))或mock()方法創建模擬對象;然後使用when(...).thenReturn(...)等方式對模擬對象的方法行為進行存根,也可配置異

JavaserializationConvertSanObject'SstateIntoAbyTeSteAmForStorageorTransermission,andDeserializationReconstructstheObjectStheObjectFromThstream.1.toenableserialization,aclassMustimustimplementTheSerializableizableface.2.UseObjectObjectObjectObjectOutputputputputputtreamToserialializeanobectizeanobectementeabectenobexpent,savin
