Java中,switch-case語句是一種多分支的控制流語句,它可以使程序根據不同的條件執行不同的代碼塊。下面介紹一些Java switch-case語句的示例,幫助您了解它的使用方法。
一、switch-case語句基本用法
switch語句的語法結構如下:
switch(expression){ case value1 : //當表達式的值等於value1時,執行這裡的代碼 break; case value2 : //當表達式的值等於value2時,執行這裡的代碼 break; case value3 : //當表達式的值等於value3時,執行這裡的代碼 break; //你可以有任意數量的case語句 default : //當所有case都不匹配時,執行這裡的代碼 }
在這個語法結構中,expression是要被測試的值,case是要比較的值,value1、value2和value3是case的值。default關鍵字是一個可選的關鍵字,用於當所有的case都不匹配時執行的代碼塊。
下面是一個簡單的Java switch-case語句的示例:
public class Test { public static void main(String[] args) { int num = 2; switch(num+1) { case 1: System.out.println("Case1: Value is: "+num); break; case 2: System.out.println("Case2: Value is: "+num); break; case 3: System.out.println("Case3: Value is: "+num); break; case 4: System.out.println("Case4: Value is: "+num); break; default: System.out.println("Default: Value is: "+num); } } }
在這個示例中,我們聲明了一個整型變數num,並將它的值設為2。然後我們使用switch語句測試num+1的值,並根據值的匹配情況執行不同的代碼塊。
二、switch-case語句展開用法
Java中的switch語句還可以採用展開的方式來寫,以減少代碼的量。如下:
public class Test { public static void main(String[] args) { int num = 2; switch(num) { case 0: case 1: case 2: case 3: System.out.println("Value is less than 4"); break; case 4: case 5: case 6: case 7: case 8: System.out.println("Value is between 4 and 8"); break; case 9: System.out.println("Value is 9"); break; default: System.out.println("Value is greater than 9"); } } }
在這個示例中,我們可以看到,使用switch-case語句展開的方式,可以同時測試多個case的值,並且執行同一個代碼塊。這樣可以讓代碼變得更加簡潔易懂。
三、switch-case語句加上break語句
在Java中,switch-case和for、while、do-while、if-else語句一樣,也可以使用break、continue和return語句來控制程序的流程。
比如在一個循環中使用switch語句,我們可以使用break語句來跳出switch語句的循環,繼續循環執行其他的語句。如下:
public class Test { public static void main(String[] args) { int num = 2; for(int i=0; i<10; i++){ switch(num+i) { case 0: case 1: case 2: case 3: System.out.println("Value is less than 4"); break; case 4: case 5: case 6: case 7: case 8: System.out.println("Value is between 4 and 8"); break; case 9: System.out.println("Value is 9"); break; default: System.out.println("Value is greater than 9"); break; } } } }
在這個示例中,我們在一個for循環中使用switch-case語句。同時,在每個case語句塊的最後,我們加上了一個break語句,用來退出switch語句。如果忘記加上break語句,程序將會繼續判斷後續的case語句,並執行後續case語句的代碼塊。
四、switch-case語句的枚舉用法
Java中的枚舉是一種數據類型,可以讓我們定義一些常量,而這些常量是不可變的。使用枚舉和switch-case語句可以很好地處理很多問題。如下:
public enum Weekday { MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY } public class Test { public static void main(String[] args) { Weekday day = Weekday.MONDAY; switch (day) { case MONDAY: System.out.println("Today is Monday"); break; case TUESDAY: System.out.println("Today is Tuesday"); break; case WEDNESDAY: System.out.println("Today is Wednesday"); break; case THURSDAY: System.out.println("Today is Thursday"); break; case FRIDAY: System.out.println("Today is Friday"); break; case SATURDAY: System.out.println("Today is Saturday"); break; case SUNDAY: System.out.println("Today is Sunday"); break; } } }
在這個示例中,我們定義了一個名為Weekday的枚舉類型,包含了一周的各個天。然後我們在switch-case語句中判斷day變數的值,分別輸出每一天的信息。
五、switch-case語句的使用限制
雖然Java的switch-case語句很方便,但是它的使用有一些限制:
- switch語句只能測試int、short、byte、char和枚舉類型的值。不能測試boolean、long、float或double類型的值。
- case語句中的值必須是常量,不能是變數或表達式。
- 在同一個switch語句中,case值不能重複。重複的值會導致編譯錯誤。
- switch語句必須包含一個default語句。如果沒有,編譯器會發出警告。
總之,Java的switch-case語句是一種很方便、實用的語句,可以用來控制程序的流程。在使用switch-case語句的過程中要注意使用限制,以免導致錯誤和bug的產生。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/228783.html