go语言比较字符串的方法:1、使用“==”运算符,语法“字符串1==字符串2”;2、使用strings包的ToLower()函数;3、使用strings包的Compare()函数,可按字典顺序比较两个字符串,语法“strings.Compare(str1,str2)”;4、使用strings包的EqualFold()函数,可忽略大小写的比较字符串,返回值为bool类型。
本教程操作环境:windows7系统、GO 1.18版本、Dell G3电脑。
方法1:使用“==”运算符(区分大小写)
package main
import "fmt"
func main() {
fmt.Println("go"=="go")
fmt.Println("GO"=="go")
}
登录后复制
输出:
true
false
登录后复制
方法2:使用strings.ToLower(不区分大小写)
package main
import (
"fmt"
"strings"
)
func main() {
srcString := "This a string"
destString := "this a string"
if strings.ToLower(srcString) == strings.ToLower(destString) {
fmt.Println("相等")
} else {
fmt.Println("不相等")
}
}
登录后复制
输出:
相等
登录后复制
方法3:使用strings.Compare(区分大小写)
Compare()函数是Golang编程语言中的内置函数,用于比较两个字符串。它用于按字典顺序比较两个字符串(按字母顺序排列单词的顺序,类似于我们在字典中搜索单词的方式),或查找字符串是否相等。它返回一个整数值,如下所示:
func Compare(s1, s2 string) int
登录后复制
如果字符串相等(s1 == s2),则返回0
如果字符串1大于字符串2(s1> s2),则返回1。
如果字符串1小于字符串2,则返回-1(s1 <s2)
示例:
package main
import (
"fmt"
"strings"
)
func main() {
fmt.Println(strings.Compare("GO","go"))
fmt.Println(strings.Compare("go","go"))
}
登录后复制
输出:
-1
0
登录后复制
Compare函数,区分大小写,比自建方法“==”的速度要快,下面是注释
/ Compare is included only for symmetry with package bytes.
// It is usually clearer and always faster to use the built-in
// string comparison operators ==, <, >, and so on.
func Compare(a, b string) int
方法4:使用strings.EqualFold(不区分大小写)
strings.EqualFold 是忽略大小写的比较,返回bool
package main
import (
"fmt"
"strings"
)
func main() {
fmt.Println(strings.EqualFold("GO","go"))
fmt.Println(strings.EqualFold("go","go"))
}
登录后复制
输出:
true
true
登录后复制
推荐学习:Golang教程