में एक निश्चित मान है या नहीं, यह जांचने का सबसे अच्छा तरीका क्या है कि एक निश्चित मान स्ट्रिंग स्लाइस में है या नहीं? मैं अन्य भाषाओं में एक सेट का उपयोग करता हूं, लेकिन गो में कोई नहीं है।जांचें कि क्या स्ट्रिंग स्लाइस में गो
पूरी कोशिश यह अब तक है:
package main
import "fmt"
func main() {
list := []string{"a", "b", "x"}
fmt.Println(isValueInList("b", list))
fmt.Println(isValueInList("z", list))
}
func isValueInList(value string, list []string) bool {
for _, v := range list {
if v == value {
return true
}
}
return false
}
http://play.golang.org/p/gkwMz5j09n
यह समाधान छोटे स्लाइस के लिए ठीक होना चाहिए, लेकिन क्या कई तत्वों के साथ स्लाइस के लिए करना है?
बेवकूफ गो के लिए आप या तो 'नक्शा [कीट टाइप] संरचना {} '(मूल्य के रूप में एक खाली शून्य आकार की संरचना) या' मानचित्र [कीटाइप] बूल 'का उपयोग करेंगे और ** ** ** ** जैसा दिखाया गया है। पूर्व के लिए आप '_, ठीक: = सेट [आइटम] 'निर्माण का उपयोग करेंगे। यदि बूल का उपयोग करना है तो आप केवल 'आइटम [सेट] सेट कर सकते हैं क्योंकि गैर-मौजूद प्रविष्टियां ["शून्य मान"] (https://golang.org/ref/spec#The_zero_value) लौटाती हैं, जो बूल के लिए गलत है। –