Avatar ·

क्या Go में break केवल switch/select को तोड़ता है या बाहरी लूप को भी?

सभी को नमस्ते! मैंने हाल ही में Go सीखना शुरू किया है और `break` स्टेटमेंट के अप्रत्याशित व्यवहार का सामना किया है। मेरे पास एक `for` लूप है जिसके अंदर एक `switch` है। मुझे उम्मीद थी कि `case` के अंदर `break` लूप को तोड़ देगा, लेकिन ऐसा नहीं हुआ। यहाँ मेरे कोड का एक सरल उदाहरण है: ```go package main import "fmt" func main() { for i := 0; i < 5; i++ { switch i { case 2: fmt.Println("2 मिला, लूप से बाहर निकल रहे हैं!") break // मुझे लगा कि यह for को तोड़ देगा default: fmt.Printf("पुनरावृत्ति %d\n", i) } } fmt.Println("लूप समाप्त हुआ") } ``` मुझे उम्मीद थी कि "2 मिला, लूप से बाहर निकल रहे हैं!" प्रिंट होने के बाद प्रोग्राम लूप समाप्त कर देगा और "लूप समाप्त हुआ" प्रिंट करेगा। हालांकि, व्यवहार में प्रोग्राम पुनरावृत्तियाँ जारी रखता है: 0, 1, "2 मिला