Go語言程式演示switch語句中的重複case錯誤


在Go語言中,switch語句用於選擇要執行的多個程式碼塊之一。switch語句將switch語句中提供的表示式與一系列case進行比較,並執行與第一個與表示式匹配的case關聯的程式碼塊。在本文中,我們將討論如何編寫一個Go語言程式來演示switch語句中的重複case錯誤。

switch語句中的重複case錯誤

在Go語言中,帶有重複case的switch語句將導致編譯時錯誤。當switch語句中的兩個或多個case具有相同的值時,就會發生此錯誤。

示例

例如,以下程式碼將導致重複case錯誤:

package main

import "fmt"

func main() {
   num := 1
   switch num {
      case 1:
         fmt.Println("Case 1")
      case 2:
         fmt.Println("Case 2")
      case 1:
         fmt.Println("Case 3")
   }
}

輸出

./main.go:12:12: duplicate case 1 (constant of type int) in expression switch
	./main.go:8:12: previous case

在此程式碼中,我們定義了一個變數num,並使用switch語句檢查其值。switch語句有三個case,但第二個和第三個case的值相同,均為1。這將導致重複case錯誤。

Go語言程式演示switch語句中的重複case錯誤

現在,讓我們編寫一個Go語言程式來演示switch語句中的重複case錯誤:

示例

package main

import "fmt"

func main() {
   num := 1
   switch num {
      case 1:
         fmt.Println("Case 1")
      case 2:
         fmt.Println("Case 2")
      case 1:
         fmt.Println("Case 3")
      default:
         fmt.Println("Default Case")
   }
}

在這個程式中,我們定義了一個變數num,並使用switch語句檢查其值。switch語句有三個case,但第二個和第三個case的值相同,均為1。為了演示重複case錯誤,我們在switch語句中添加了一個default case。如果switch語句中的其他case都不匹配,則將執行default case。

輸出

./main.go:12:12: duplicate case 1 (constant of type int) in expression switch
	./main.go:8:12: previous case

此錯誤訊息表明switch語句中存在重複的case。透過修復重複的case錯誤,程式將正常工作,並根據num的值執行正確的程式碼塊。

結論

在本文中,我們討論瞭如何編寫Go語言程式來演示switch語句中的重複case錯誤。我們還解釋了錯誤的原因以及如何修復它。按照提供的步驟,您可以學習如何在Go語言中編寫高效且無錯誤的程式碼。

更新於:2023年4月19日

瀏覽量:365

開啟您的職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.