Функция bytes.Compare

Функция bytes.Compare сравнивает два среза байтов (строки) лексикографически. В первый параметр a мы передаем первый срез байтов для сравнения, во второй параметр b мы передаем второй срез байтов для сравнения. Функция возвращает 0, если срезы равны; -1, если первый срез меньше второго; и 1, если первый срез больше второго.

Синтаксис

gobytes.Compare(a, b)

Пример

Давайте сравним две строки 'abcde' и 'abcde':

gopackage main

import (
  "bytes"
  "fmt"
)

func main() {
  res := bytes.Compare([]byte("abcde"), []byte("abcde"))
  fmt.Println(res)
}

Результат выполнения кода:

go0

Пример

Давайте сравним две строки 'abcde' и 'abcd':

gopackage main

import (
  "bytes"
  "fmt"
)

func main() {
  res := bytes.Compare([]byte("abcde"), []byte("abcd"))
  fmt.Println(res)
}

Результат выполнения кода:

go1

Пример

Давайте сравним две строки 'abcd' и 'abcde':

gopackage main

import (
  "bytes"
  "fmt"
)

func main() {
  res := bytes.Compare([]byte("abcd"), []byte("abcde"))
  fmt.Println(res)
}

Результат выполнения кода:

go-1

Смотрите также

  • функцию bytes.Equal,
    которая сравнивает срезы байтов на равенство
  • функцию strings.Compare,
    которая сравнивает строки
  • функцию strings.EqualFold,
    которая сравнивает строки без учета регистра
  • функцию bytes.HasPrefix,
    которая проверяет начало среза байтов на префикс