Выбрать страницу
Как найти Min или Max в Slice в Go 1.21

В последней версии Go, 1.21, появились две новые встроенные функции: min() и max(). Эти функции уже давно используются во многих других языках, таких как Python и JavaScript, и теперь являются долгожданным дополнением к Go.

Функции min() и max() были введены для упрощения процесса поиска наименьшего и наибольшего значения в наборе чисел.

Как использовать min() и max() Примечание.

В примере ниже используются встроенные функции min и max, про slices см. ниже

package main

import "fmt"

func main() {

	// Max
	num := max(1, 2, 3)
	fmt.Println("Max =", num)

	// Min
	minNum := min(1, 2, 3)
	fmt.Println("Min =", minNum)

	// Won't run:
	// invalid argument: myList (variable of type []int) cannot be ordered

	// myList := []int{1, 2, 3}
	// fmt.Println("Max in Slice =", max(myList))
}

А как насчет slices?

Пакет slices также содержит функции поиска минимальных и максимальных значений в наборе данных.

package main

import (
	"fmt"
	"slices"
)

func main() {

	myList := []int{1, 2, 3}

	// Max in Slice
	max := slices.Max(myList)
	fmt.Println("Max in Slice =", max)

	// Min in Slice
	min := slices.Min(myList)
	fmt.Println("Min in Slice =", min)
}
Мы используем файлы cookie для персонализации контента и рекламы, предоставления функций социальных сетей и анализа нашего трафика. Мы также делимся информацией о вашем использовании нашего сайта с нашими партнерами по социальным сетям, рекламе и аналитике. View more
Принять
Отклонить