1 Star 0 Fork 0

余济舟/aid

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
ternary.go 879 Bytes
一键复制 编辑 原始数据 按行查看 历史
package operation
// Ternary 三元运算:通过值
func Ternary[V any](condition bool, T, F V) V {
if condition {
return T
}
return F
}
// TernaryFunc 三元运算:通过回调函数
func TernaryFunc[V any](condition func() bool, T V, F V) V { return Ternary(condition(), T, F) }
// TernaryFuncReturn 三元运算:返回值使用回调方法
func TernaryFuncReturn[V any](condition bool, trueFn func() V, falseFn func() V) V {
var v V
if trueFn == nil || falseFn == nil {
return v
}
if condition {
return trueFn()
}
return falseFn()
}
// TernaryFuncAll 三元运算:通过回调函数,返回值也使用回调函数
func TernaryFuncAll[V any](condition func() bool, trueFn func() V, falseFn func() V) V {
var v V
if condition == nil || trueFn == nil || falseFn == nil {
return v
}
if condition() {
return trueFn()
}
return falseFn()
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/jericho-yu/aid.git
git@gitee.com:jericho-yu/aid.git
jericho-yu
aid
aid
v1.35.20

搜索帮助