簡體   English   中英

在C#中切換案例聲明

[英]Switch Case Statement in C#

我需要有關C#中正在開發的語音識別程序的幫助。

這是指Switch語句。 如果我們有一個例子:

//FIRST CASE STATEMENT
case "open chrome":
System.Diagnostics.Process.Start(@"C:\Program Files\Google\Chrome\Application\chrome.exe");
JARVIS.Speak("Loading");
break;
//SECOND CASE STATEMENT
case "Thanks":
JARVIS.Speak("No problem");
break;

我如何做到這一點,以便如果不說第一個case語句,那么第二個將不起作用。 但是,如果說第一個案例陳述,那么它將允許第二個陳述起作用。

我在想我需要一個IF語句,但不確定。

謝謝。

怎么樣

//FIRST CASE STATEMENT
case "open chrome":
System.Diagnostics.Process.Start(@"C:\Program Files\Google\Chrome\Application\chrome.exe");
JARVIS.Speak("Loading");
alocalvariable = true;
break;

外部開關

if (alocalvariable)    
{
    JARVIS.Speak("No problem");
    alocalvariable = false;
} 

您並沒有真正指定它,但是設置方式上,每次要觸發開關2時,都必須按下一次開關1:

bool isValid = false;
switch(whateverYourVariableIsCalled)
{


    //FIRST CASE STATEMENT
    case "open chrome":
        System.Diagnostics.Process.Start(@"C:\Program Files\Google\Chrome\Application\chrome.exe");
        JARVIS.Speak("Loading");
        isValid = true;
        break;
    //SECOND CASE STATEMENT
    case "Thanks":
        if (isValid)
        {
            JARVIS.Speak("No problem");
        }
        isValid = false;
        break;
}

Switch / Case類似於if-else語句,它將僅執行一種情況。

您將需要一個嵌套的if語句來執行此操作。

為了使您的代碼更具可讀性和可理解性,您可以將案例變成一個函數,並在滿足特定條件的情況下調用該函數。

暫無
暫無

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

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