当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Golang strings.Compare()用法及代码示例


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

用法:

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

范例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”,在字典上大于第二个字符串“Apple”,这是因为使用Unicode字符集从左到右依次比较字符,并且‘a’的ASCII值为97,而'A'的ASCII值是65.因此,苹果大于苹果。
第二输出为-1,因为第一个字符串是“Apple”,在字典上小于第二个字符串“Apricot”。第三输出为-1,因为第一个字符串是“Apricot”,在字典上小于第二个字符串“apple”,因为“ A”小于第二个字符串‘a’。




相关用法


注:本文由纯净天空筛选整理自prakhar7大神的英文原创作品 strings.Compare() Function in Golang with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。