Golang String Vergleich: Ein umfassender Leitfaden
Lukas Schneider
DevOps Engineer · Leapcell

Key Takeaways
- Verwenden Sie
==
für effiziente Gleichheitsprüfungen und<
,>
für lexikografischen Vergleich. - Verwenden Sie
strings.EqualFold
für einen Fall-unempfindlichen Zeichenkettenvergleich. bytes.Compare
ist nützlich für leistungs-kritische Zeichenkettenvergleiche.
Der Zeichenkettenvergleich ist eine grundlegende Operation in jeder Programmiersprache, und Golang (oder Go) bietet mehrere Möglichkeiten, Zeichenketten effizient zu vergleichen. In diesem Artikel werden wir verschiedene Methoden zum Vergleichen von Zeichenketten in Go untersuchen, die Gleichheitsprüfungen, lexikografische Vergleiche, Fall-unempfindliche Vergleiche und Leistungsaspekte abdecken.
1. Zeichenketten auf Gleichheit vergleichen
Der einfachste Weg, zwei Zeichenketten in Go zu vergleichen, ist die Verwendung der Operatoren ==
und !=
. Diese Operatoren prüfen, ob zwei Zeichenketten in Bezug auf den Inhalt identisch sind.
Beispiel:
package main import "fmt" func main() { str1 := "hello" str2 := "hello" str3 := "world" fmt.Println(str1 == str2) // true fmt.Println(str1 == str3) // false fmt.Println(str1 != str3) // true }
Der Operator ==
gibt true
zurück, wenn beide Zeichenketten die gleiche Zeichenfolge haben; andernfalls gibt er false
zurück.
2. Lexikografischer Zeichenkettenvergleich
Golang ermöglicht den lexikografischen (alphabetischen) Zeichenkettenvergleich mit relationalen Operatoren wie <
, <=
, >
, und >=
.
Beispiel:
package main import "fmt" func main() { str1 := "apple" str2 := "banana" fmt.Println(str1 < str2) // true fmt.Println(str1 > str2) // false fmt.Println(str1 <= str2) // true fmt.Println(str1 >= str2) // false }
Hier wird `