iT邦幫忙

2023 iThome 鐵人賽

DAY 12
0
自我挑戰組

突然冒出的自學計畫系列 第 12

#Day12 goto義大利麵傳送門

  • 分享至 

  • xImage
  •  

今天來講酷酷的新東西:goto
以前在Python好像沒看過

goto

這東東基本上就是個傳送門!
直接附上官網的示範:

void CheckMatrices(Dictionary<string, int[][]> matrixLookup, int target)
{
    foreach (var (key, matrix) in matrixLookup)
    {
        for (int row = 0; row < matrix.Length; row++)
        {
            for (int col = 0; col < matrix[row].Length; col++)
            {
                if (matrix[row][col] == target)
                {
                    goto Found;
                }
            }
        }
        Console.WriteLine($"Not found {target} in matrix {key}.");
        continue;

    Found:
        Console.WriteLine($"Found {target} in matrix {key}.");
    }
}

我們可以看到最裡面的那層if裡面有個goto,也就是說只要符合那個if的條件,就會直接傳送到最下面的Found,省略掉中間的輸出。
再仔細看看,會發現被跳過的那段輸出寫著"Not found",而最下面的Found則會輸出Found,應該就很明確ㄌ。

話說在寫完goto的下一兩篇後,發現傳說中的Spaghetti code原來和goto有關
明天就先來寫這個吧!

註:今天加退選最後一天,猶豫到現在還是不知道該退誰。感覺我不會在系統關閉前想好耶,這學期會不會爆掉啊


上一篇
#Day11 型別轉換:int & string
下一篇
#Day13 抵達青醬義大利麵
系列文
突然冒出的自學計畫30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言