Golang strings.Compare()函数及例子

Golang strings.Compare()函数及例子

Compare()函数 是Golang编程语言中的一个内置函数,用于比较两个字符串。它用于按字典序(以按字母顺序排列单词的方式,类似于我们在字典中查找单词的方式)比较两个字符串,或者确定字符串是否相等。它返回一个整数值,如下所示:

语法:

func Compare(s1, s2 string) int
  • 如果字符串相等(s1==s2),则返回0
  • 如果字符串1大于字符串2(s1 > s2),则返回1
  • 如果字符串1小于字符串2(s1 < s2),则返回-1

例子1:

// Golang program to illustrate the use of
// the strings.Compare() Function
package main
  
import (
    "fmt"
    "strings"
)
  
func main() {
  
    var s1 = "Geeks"
    var s2 = "GeeksforGeeks"
    var s3 = "Geeks"
  
    // using the function
    fmt.Println(strings.Compare(s1, s2))
    fmt.Println(strings.Compare(s2, s3))
    fmt.Println(strings.Compare(s3, s1))
  
} 

输出:

-1
1
0

解释: 第一个输出为-1,因为第一个字符串是“Geeks”,在字典序中比第二个字符串“GeeksforGeeks”小。第二个输出为1,因为第一个字符串是“GeeksforGeeks”,在字典序中比第二个字符串“Geeks”大。第三个输出为0,因为第一个字符串是“Geeks”,与第二个字符串“Geeks”相等。

例子2:

// Golang program to illustrate the use of
// the strings.Compare() Function
package main
  
import (
    "fmt"
    "strings"
)
  
func main() {
  
    var s1 = "apple"
    var s2 = "Apple"
    var s3 = "Apricot"
      
    // using the function
    fmt.Println(strings.Compare(s1, s2))
    fmt.Println(strings.Compare(s2, s3))
    fmt.Println(strings.Compare(s3, s1))
  
} 

输出:

1
-1
-1

解释: 第一个输出为1,因为第一个字符串是“apple”,在Unicode字符集和ASCII值的帮助下,从左到右顺序比较字符,但ASCII值“a”的值为97,而“A”的值为65,因此“apple”比“Apple”大。 第二个输出为-1,因为第一个字符串是“Apple”,在字典序中比第二个字符串“Apricot”小。第三个输出为-1,因为第一个字符串是“Apricot”,在字典序中比第二个字符串“apple”小,因为“A”小于“a”。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程