go interface conversion
发布时间
阅读量:
阅读量
GO 数据类型强制转换
在实际应用过程中,常常会遭遇接口返回的数据格式类型不一致,或与预期结果存在偏差,从而引发频繁的错误提示。为此,设计了一种简易的数据类型强制转换方案以应对此类问题。
import (
"errors"
"strconv"
"strings"
)
var ErrUnsigned = errors.New("The input is smaller than 0 ")
func Force2uint64(input interface{}) (uint64, error) {
var res uint64
if m, ok := input.(string); ok {
if strings.Contains(m, "-") {
return 0, ErrUnsigned
}
res, err = strconv.ParseUint(m, 10, 64)
if err != nil {
return 0, err
}
}
if m, ok := input.(int); ok {
if m < 0 {
全部评论 (0)
还没有任何评论哟~
