GO语言"bytes"包中"Compare"函数的用法及代码示例。
用法:
func Compare(a, b []byte) int
Compare 返回一个整数,按字典顺序比较两个字节切片。如果 a == b,结果将为 0,如果 a < b,则为 -1,如果 a > b,则为 +1。一个 nil 参数相当于一个空切片。
例子:
package main
import (
"bytes"
)
func main() {
// Interpret Compare's result by comparing it to zero.
var a, b []byte
if bytes.Compare(a, b) < 0 {
// a less b
}
if bytes.Compare(a, b) <= 0 {
// a less or equal b
}
if bytes.Compare(a, b) > 0 {
// a greater b
}
if bytes.Compare(a, b) >= 0 {
// a greater or equal b
}
// Prefer Equal to Compare for equality comparisons.
if bytes.Equal(a, b) {
// a equal b
}
if !bytes.Equal(a, b) {
// a not equal b
}
}
示例(搜索):
package main
import (
"bytes"
"sort"
)
func main() {
// Binary search to find a matching byte slice.
var needle []byte
var haystack [][]byte // Assume sorted
i := sort.Search(len(haystack), func(i int) bool {
// Return haystack[i] >= needle.
return bytes.Compare(haystack[i], needle) >= 0
})
if i < len(haystack) && bytes.Equal(haystack[i], needle) {
// Found it!
}
}
相关用法
- GO Command用法及代码示例
- GO CommandContext用法及代码示例
- GO CommentMap用法及代码示例
- GO CopyN用法及代码示例
- GO CopyBuffer用法及代码示例
- GO ContainsRune用法及代码示例
- GO Copysign用法及代码示例
- GO Cosh用法及代码示例
- GO Config用法及代码示例
- GO Count用法及代码示例
- GO ContainsAny用法及代码示例
- GO Cos用法及代码示例
- GO Conn.ExecContext用法及代码示例
- GO Copy用法及代码示例
- GO Contains用法及代码示例
- GO Chmod用法及代码示例
- GO Cmd.Start用法及代码示例
- GO CanBackquote用法及代码示例
- GO CreateTemp用法及代码示例
- GO Cut用法及代码示例
注:本文由纯净天空筛选整理自golang.google.cn大神的英文原创作品 Compare。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。