क्या Go में स्लाइस के तत्वों को पुनरावृत्त करने के लिए foreach लूप है?
सभी को नमस्ते! मैंने Python और JavaScript के बाद Go सीखना शुरू किया है, और एक अप्रत्याशित कठिनाई का सामना किया। Python में मैं `for item in my_list:` लिखने का आदी हूँ, JS में `arr.forEach(item => ...)`। और Go में मैं केवल क्लासिक `for i := 0; i < len(slice); i++ {}` देखता हूँ — क्या यह सामान्य है?
मेरे पास स्ट्रिंग्स का एक सरल स्लाइस है:
```go
names := []string{"Alice", "Bob", "Charlie"}
```
मैं प्रत्येक नाम को एक अलग लाइन पर प्रिंट करना चाहता हूँ। Python में मैं लिखूंगा:
```python
for name in names:
print(name)
```
और Go में मुझे ऐसे लिखना पड़ता है:
```go
for i := 0; i < len(names); i++ {
fmt.Println(names[i])
}
```
यह काम करता है, लेकिन बोझिल लगता है। मुझे लगता है कि मैं किसी सुरुचिपूर्ण सिंटैक्स को खो रहा हूँ। मैंने "foreach in Go" गूगल करने की कोशिश की, लेकिन जवाब मुझे भ्रमित करते हैं — कोई कहता है कि foreach नहीं है, कोई `range` के साथ कंस्ट्रक्शन दिखाता है।
कृपया बताएं:
1. क्या Go में अन्य भाषाओं के foreach का एनालॉग है?
2. यदि हाँ, तो इसका सही उपयोग कैसे करें?
3. क्या प्रदर्शन में कोई अंतर है?