簡體   English   中英

使用標簽值的Java開關語句

[英]java switch statements using label value

我可以在case塊內的switch語句中引用選定的case嗎?

作為澄清:

假設我們有一個函數output(String)輸出一個給定的字符串。

然后可以將舊代碼轉換為某些新代碼(我不知道其正確語法)嗎?

舊代碼:

public void switchTest(String string) {
    case "car":
        output("Car: car");
        break;
    case "cat": 
        output("Animal: cat");
        break;
    case "dog":
        output("Animal: dog");
        break;
    case "mouse":
        output("Animal: mouse");
        break;
    default:
        output("Unknown");
        break;
}

建議的代碼,其中x是我們的神奇元素:

public void switchTest(String string) {
    case "car":
        output("Car: " + x);
        break;
    case "cat":
    case "dog":
    case "mouse":
        output("Animal: " + x);
        break;
    default:
        output("Unknown");
        break;
}

ps。 我只是在使用一個假設的示例,所以不要擔心它是否沒有道理。

我希望現在有意義,基本上我想引用case標記后面的值。

問候。

關於什么

switch(string) {
   case "car":
        output("Car: " + string);
        break;
    case "cat":
    case "dog":
    case "mouse":
        output("Animal: " + string);
        break;
    default:
        output("Unknown");
        break;
}

抱歉,如果我在這里找不到要點,但是為什么不使用字符串呢?

public void switchTest(String string) {
    case "car":
        output("Car: " + string);
        break;
    case "cat":
    case "dog":
    case "mouse":
        output("Animal: " + string);
        break;
    default:
        output("Unknown");
        break;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM