簡體   English   中英

“無法掉落”開關錯誤

[英]“Cannot fall through” Switch Error

} else {
    int indexGenerator = numberGenerator.Next(1, 4);
    int answer1 = finalUserInput - theCorrectAnswer;
    switch (indexGenerator) {
        case 1:
            Console.WriteLine("You are off by" + answer1);
        case 2:
            Console.WriteLine("So close. Maybe if you add or subtract " + answer1 + "?");

當我嘗試使開關工作時,會彈出一條錯誤消息,提示“控制案例無法從Case1掉入另一個案例”。

您需要添加break; 在switch語句中每種情況的結尾處。

switch (indexGenerator) {
  case 1:
      Console.WriteLine("You are off by" + answer1);
      break; 
  case 2:
      Console.WriteLine("So close. Maybe if you add or subtract " + answer1 + "?");
      break;
}

這里的問題是您忘記添加break; 是您的代碼。 您的代碼應如下所示。

switch (indexGenerator){
                case 1:
                    Console.WriteLine("You are off by" + answer1);
                break;
                case 2:
                    Console.WriteLine("So close. Maybe if you add or subtract " + answer1 + "?");
                break;
}

break的目的是基本上告訴您的程序您正在脫離這種case:語句的一部分。

您需要在case 1的結尾處break一下:

}
else
{
    int indexGenerator = numberGenerator.Next(1, 4);
    int answer1 = finalUserInput - theCorrectAnswer;
    switch (indexGenerator)
    {
        case 1:
            Console.WriteLine("You are off by" + answer1);
            break; // missing break
        case 2:
            Console.WriteLine("So close. Maybe if you add or subtract " + answer1 + "?");
            break; // missing break

如我所展示的,在case 2塊的末尾添加一個。

暫無
暫無

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

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