github.com/szq-123/codingpractice@v0.0.0-20240430111904-2778dfaf7994/golang/generics_test.go (about) 1 package golang 2 3 import "golang.org/x/exp/constraints" 4 5 func Contain[T comparable](s []T, p T) bool { 6 for _, ss := range s { 7 if p == ss { 8 return true 9 } 10 } 11 return false 12 } 13 14 type Number interface { 15 int | int8 | int16 | int32 | int64 | float32 | float64 16 } 17 18 func Max[T Number](a, b T) T { 19 if a < b { 20 return b 21 } 22 return a 23 } 24 25 func Min[T constraints.Ordered](a, b T) T { 26 if a > b { 27 return b 28 } 29 return a 30 }