導航:首頁 > 編程語言 > javaswitch枚舉

javaswitch枚舉

發布時間:2023-09-04 05:15:31

java switch 怎麼用 enum getid

Java語言中的枚舉類型的使用方法如下: 用法一:常量; public enum Color { RED, GREEN, BLANK, YELLOW } 用法二:switch; enum Signal { GREEN, YELLOW, RED } public class TrafficLight { Signal color = Signal.RED; public void change

❷ 我安裝了java8,使用不了switch(String ),求解答...

哥呀,switch中只能使用5中基本類型的數據呀,String類型的數據時封裝類型的,不能這么用的。
switch中只能使用boolean,int,short,enum,byte,其餘的都會報錯!

❸ JAVA中SWITCH為什麼不能使用LONG型作參數

交換機在JAVA中不能使用long的根本原因是長時間轉換為int將失去精度,導致數據不準確,因此JAVA交換機具有不允許長的邏輯規則。

switch語句中的變數類型可以是:byte,short,int或char。從Java SE 7開始,交換機支持字元串String類型,case標記必須是字元串常量或文字。


(3)javaswitch枚舉擴展閱讀

Switch案例在java中有以下規則:

switch語句可以有多個case語句。每個案例後跟一個值和一個要比較的冒號。

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

當變數的值等於case語句的值時,case語句後面的語句開始執行,直到break語句出現跳出switch語句。

遇到break語句時,switch語句終止。程序跳轉到switch語句後的語句執行。 case語句不必包含break語句。如果沒有發生break語句,程序將繼續執行下一個case語句,直到發生break語句。

switch語句可以包含一個默認分支,它通常是switch語句的最後一個分支(可以是任何地方,但建議在最後一個)。當case語句沒有值且變數的值相等時,執行Default。默認分支不需要break語句。

❹ java中switch語句

switch 語句的格式:

switch ( 整型或字元型變數 )
{
case 變數可能值1 :
分支一;
break;
case 變數可能值2 :
分支二;
break;
case 變數可能值3 :
分支三;
break;
...
default :
最後分支;


在 switch 的語法里,我們要學到4個關鍵字:switch、case 、break、default。

在switch ( 變數 )這一行里,變數只能是整型或字元型。程序先讀出這個變數的值,然後在各個"case"里查找哪個值和這個變數相等,如果相等,就算條件成立,程序執行相應的分支,直到碰上break或者switch語句結束。


了解一下switch,case,break,default的意思,對理解前面的一切也會有幫助,它們分別是:開關,情況,中斷,默認(值)。那麼用一句話套起來的說法就是:根據開關值的不同,執行不同的情況,直到遇上中斷;如果所有的情況都不符合開關值,那麼就執行默認的分支。

最後說一下關於switch中非常重要的幾個注意點。

第一、switch ( 整型或字元型變數 )中,變數的類型如文中所標,只能是整型和字元類型。它們包含 int,char。當然無符類型或不同的長度整型(unsigned int,short,unsigned char)等都可以。另外,枚舉類型(enum)內部也是由整型或字元類型實現。所以也可以。實型(浮點型)數就不行,如:
float a = 0.123;
switch(a) //錯誤!a不是整型或字元類型變數。
{
....
}

第二、case之後可以是直接的常量數值,如例中的1、2、3、4,也可以是一個使用常量計算式,如2+2等,但不能是變數或帶有變數的表達式,如 a * 2等。當然也不能是實型數,如4.1,或2.0 / 2等。
switch(formWay)
{
case 2-1 : //正確
...
case a-2 : //錯誤
...
case 2.0 : //錯誤
...
}
另外,在case與常量值之後,需要一個冒號,請注意不要疏忽。

第三、break 的作用。
break 使得程序在執行完選中的分支後,可以跳出整個switch語句(即跳到switch接的一對{}之後),完成switch。如果沒有這個break,程序將在繼續前進到下一分支,直到遇到後面的break或者switch完成。
比如,假設現在程序進入case 1: 中的分支,但case 1的分支這回沒有加break:

case 1 :
System.out.println("您是通過搜索引擎來到本網站的。");
case 2 :
System.out.println("您是通過朋友介紹來到本網站的。");

那麼,程序在輸出"您是通過搜索引擎來到本網站的。" 之後,會繼續輸出case 2中的"您是通過朋友介紹來到本網站的。" 。
請大家將前面實例中的代碼片段改為如下(紅色部分,即將所有的break都通過加//使之無效。):
...
case 1 :
System.out.println("您是通過搜索引擎來到本網站的。" );
//break;
case 2 :
System.out.println("您是通過朋友介紹來到本網站的。");
//break;
case 3 :
System.out.println("您是通過報刊雜志來到本網站的。");
//break;
case 4 :
System.out.println("您是通過其它方法來到本網站的。");
//break;
default :
System.out.println("錯誤的選擇!請輸入1~4的數字做出選擇。");
...

運行後,結果會是如何?請大家動手試試,然後在作業中回答我。

第四、default是可選中,前面我們已經說過它的用處,及如果沒有default,程序在找不到匹配的case分支後,將在switch語句范圍內不做什麼事,直接完成switch。大家也可以在實例中將default的代碼注釋掉,然後試運行,並且在選擇時輸入5。
...
//default :
//cout << "錯誤的選擇!請輸入1~4的數字做出選擇。" << endl;
...

第五、必要時,可在各個case中使用{}來明確產生獨立的復合語句。
前面我們在講if...語句和其它流程式控制制語句時,都使用{}來產生復合語句:
if (條件)
{
分支一;
}
除非在分支中的語句正好只有一句,這里可以不需要花括弧{}。但在switch的各個case語句里,我們在語法格式上就沒有標出要使用{},請看:
switch ( 整型或字元型變數 )
{
case 變數可能值1 :
分支一;
break;
case 變數可能值2 :
....
}

一般教科書上只是說 case 分支可以不使用{},但這里我想提醒大家,並不是任何情況下case分支都可以不加{},比如你想在某個case里定義一個變數:
switch (formWay)
{
case 1 :
int a=2; //錯誤。由於case不明確的范圍,編譯器無法在此處定義一個變數。
...
case 2 :
...
}

在這種情況下,加上{}可以解決問題。
switch (formWay)
{
case 1 :

int a=2; //正確,變數a被明確限定在當前{}范圍內。
...

case 2 :
...
}

❺ java中switch語句的用法

如果a 是1 就運行 case1 2就case2
如果全部沒有就運行default
break 是說不在向下運行
如果沒有break 運行完case1後還會繼續向下運行case2等等

❻ java switch語句、C語言switch語句和c++switch語句的區別是啥

在Java和C++中,switch語句表示有多種條件可供選擇,在Java和C++中用法基本相同。
switch語句中的每個case,要用break,return或者throw來進行結束。

Java和C++中switch可以修飾的數據類型稍微不同:

一、Java
1. byte、char、short、int四種基本類型以及它們的包裝類(需要Java5.0/1.5以上版本支持)都可以用於switch語句。
2. long、float、double、boolean四種基本類型以及它們的包裝類(在Java所有版本中)都不能用於switch語句。
3. enum類型,即枚舉類型可以用於switch語句,但是要在Java5.0(1.5)版本以上才支持。
4. 所有類型的對象(包括String類,但在Java5.0/1.5以上版本中,該項要排除byte、char、short、int四種基本類型對應的包裝類)都不能用於switch語句。

二、C++
1. char、short、int、long、bool四種基本類型都可以用於switch語句。
2. float、double都不能用於switch語句。
3. enum類型,即枚舉類型可以用於switch語句。
4. 所有類型的對象都不能用於switch語句。

閱讀全文

與javaswitch枚舉相關的資料

熱點內容
大型雲伺服器有哪些 瀏覽:463
解壓版三國街機 瀏覽:421
去中心化app裡麵包含什麼 瀏覽:948
密鑰安裝命令行 瀏覽:505
文獻編譯英文 瀏覽:659
php調用瀏覽器 瀏覽:527
數控車床編程初學實例 瀏覽:949
cad中篩選命令是什麼 瀏覽:800
數控銑床法蘭克編程 瀏覽:330
怎麼樣分解壓縮包圖標 瀏覽:619
php兩年工作經驗簡歷 瀏覽:765
怎麼提前解壓房貸 瀏覽:699
反詐宣傳app哪裡可以拿到用戶資料 瀏覽:856
華為交換機命令配置 瀏覽:11
電機pid演算法實例c語言 瀏覽:972
安裝ue5未找到金屬編譯器 瀏覽:964
l1壓縮性骨折微創手術 瀏覽:615
看電腦配置命令 瀏覽:109
單片機調用db數值偏移量 瀏覽:446
賓士smart車型壓縮機功率 瀏覽:529