簡體   English   中英

你能在switch語句中使用多個值(C#)嗎?

[英]Can you use multiple values in a switch statement (C#)

我知道在switch開關中使用多個值應該意味着你應該使用if-else設置,但這更像是一個理論問題,而不是一個實用問題。

我的問題是:

switch(x){
    case 4:
        break;
    case 5 || 6:
        break;
}

以上5 || 6 5 || 6示出了在x為5或6的情況下發射的情況。

這是可能嗎?

編輯:這是關於switch決策制定的設計而不是使用漏洞的問題。

你可以像這樣來匹配5或6:

switch(x){
    case 4:
        break;
    case 5:
    case 6:
        // do something for 5 or 6
        break;
}

當然,你可以借助C#7中的Pattern matching
我知道這不是優雅的方式,而是OP所要求的

switch(x){
    case var rule when x == 4:
        //do your things
        break;
    case var rule when x == 5 || x == 6:
        //do your other things
        break;
}

暫無
暫無

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

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