Функция sort.Strings
Функция sort.Strings сортирует слайс строк в порядке возрастания (лексикографическом порядке). Она принимает один параметр - слайс строк, который нужно отсортировать. Функция изменяет исходный слайс и не возвращает никакого значения. Для использования функции необходимо импортировать пакет sort.
Синтаксис
sort.Strings(slice)
Пример
Давайте отсортируем слайс строк []string{"d", "b", "e", "a", "c"}:
package main
import (
"fmt"
"sort"
)
func main() {
slice := []string{"d", "b", "e", "a", "c"}
sort.Strings(slice)
fmt.Println(slice)
}
Результат выполнения кода:
[a b c d e]
Пример
Давайте отсортируем слайс строк с числами []string{"10", "2", "1", "3", "20"}:
package main
import (
"fmt"
"sort"
)
func main() {
slice := []string{"10", "2", "1", "3", "20"}
sort.Strings(slice)
fmt.Println(slice)
}
Результат выполнения кода:
[1 10 2 20 3]
Обратите внимание, что строки сортируются лексикографически, поэтому "10" идет перед "2".
Пример
Давайте проверим, работает ли сортировка со строкой, содержащей специальные символы:
package main
import (
"fmt"
"sort"
)
func main() {
slice := []string{"z", "A", "!", "b", "1"}
sort.Strings(slice)
fmt.Println(slice)
}
Результат выполнения кода:
[! 1 A b z]
Функция сортирует строки на основе их байтовых значений, поэтому специальные символы и цифры идут перед буквами.
Смотрите также
-
функцию
sort.Ints,
которая сортирует слайс целых чисел -
функцию
sort.Float64s,
которая сортирует слайс чисел с плавающей точкой -
функцию
sort.StringsAreSorted,
которая проверяет, отсортирован ли слайс строк -
функцию
sort.SearchStrings,
которая ищет элемент в отсортированном слайсе строк