Avatar ·

Wie bekomme ich ein Zeichen aus einem String per Index in Go? (Problem mit Runen und Bytes)

```html Hallo zusammen! Ich bin neu in Go und habe ein unerwartetes Problem bei der Arbeit mit Strings. Ich muss ein Zeichen aus einem String per Index abrufen, wie ich es in anderen Sprachen gewohnt bin (z.B. `str[i]` in Python oder `charAt(i)` in Java). Hier ist mein Code: ```go package main import "fmt" func main() { str := "Привет, мир!" fmt.Println(str[0]) // Gibt 208 aus, nicht 'П' fmt.Println(string(str[0])) // Gibt 'Ð' aus, nicht 'П' } ``` Ich habe erwartet, dass `str[0]` mir das erste Zeichen 'П' zurückgibt, aber stattdessen bekomme ich seltsame Zahlen und Zeichen. Warum passiert das? Wie bekomme ich in Go korrekt ein Zeichen per Index? Ich habe versucht, `string(str[0])` zu verwenden, aber das funktioniert auch nicht richtig. Besonders seltsam ist, dass es bei englischen Buchstaben (z.B. "Hello") normal funktioniert, aber bei ```