✨ 比较辅助函数
This commit is contained in:
parent
52d707486a
commit
13d5d2e7dc
|
@ -0,0 +1,31 @@
|
||||||
|
package maths
|
||||||
|
|
||||||
|
import "github.com/kercylan98/minotaur/utils/generic"
|
||||||
|
|
||||||
|
const (
|
||||||
|
CompareGreaterThan CompareExpression = 1 // 大于
|
||||||
|
CompareGreaterThanOrEqual CompareExpression = 2 // 大于等于
|
||||||
|
CompareLessThan CompareExpression = 3 // 小于
|
||||||
|
CompareLessThanOrEqual CompareExpression = 4 // 小于等于
|
||||||
|
CompareEqual CompareExpression = 5 // 等于
|
||||||
|
)
|
||||||
|
|
||||||
|
// CompareExpression 比较表达式
|
||||||
|
type CompareExpression int
|
||||||
|
|
||||||
|
// Compare 根据特定表达式比较两个值
|
||||||
|
func Compare[V generic.Ordered](a V, expression CompareExpression, b V) bool {
|
||||||
|
switch expression {
|
||||||
|
case CompareGreaterThan:
|
||||||
|
return a > b
|
||||||
|
case CompareGreaterThanOrEqual:
|
||||||
|
return a >= b
|
||||||
|
case CompareLessThan:
|
||||||
|
return a < b
|
||||||
|
case CompareLessThanOrEqual:
|
||||||
|
return a <= b
|
||||||
|
case CompareEqual:
|
||||||
|
return a == b
|
||||||
|
}
|
||||||
|
panic("unknown expression")
|
||||||
|
}
|
Loading…
Reference in New Issue