github.com/zly-app/zapp@v1.3.3/pkg/utils/ternary.go (about) 1 /* 2 ------------------------------------------------- 3 Author : Zhang Fan 4 date: 2020/12/11 5 Description : 6 ------------------------------------------------- 7 */ 8 9 package utils 10 11 var Ternary = &ternaryUtil{} 12 13 type ternaryUtil struct{} 14 15 // 如果boole为真返回v1否则返回v2 16 func (*ternaryUtil) Ternary(boole bool, v1 interface{}, v2 interface{}) interface{} { 17 if boole { 18 return v1 19 } 20 return v2 21 } 22 23 // 顺序判断传入的数据, 如果某个数据不是其数据类型的零值则返回它, 否则返回最后一个数据 24 func (*ternaryUtil) Or(values ...interface{}) interface{} { 25 var v interface{} 26 for _, v = range values { 27 if !Reflect.IsZero(v) { 28 return v 29 } 30 } 31 return v 32 }