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 mainimport "fmt"func main() { fmt.println("go"=="go") fmt.println("go"=="go")}
输出:
truefalse
方法2:使用strings.tolower(不区分大小写)
package mainimport ( "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 mainimport ( "fmt" "strings")func main() { fmt.println(strings.compare("go","go")) fmt.println(strings.compare("go","go"))}
输出:
-10
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 mainimport ( "fmt" "strings")func main() { fmt.println(strings.equalfold("go","go")) fmt.println(strings.equalfold("go","go"))}
输出:
truetrue
推荐学习:golang教程
以上就是用go语言怎么实现字符串比较的详细内容。