通过interface解决动态类型传参

2025-07-06T09:20:00

在go语言中,interface{}类型可以接收任意值,根据这个特性,可以完成动态类型传参,例如:

func add(a, b interface{}) interface{} {
    switch a.(type) {
    case int:
        ai, _ := a.(int)
        bi, _ := b.(int)
        return ai + bi
    case float64:
        ai, _ := a.(float64)
        bi, _ := b.(float64)
        return ai + bi
    default:
        return nil
    }
}

这个函数完成了一个int类型和float64类型可以同时使用的相加函数

当前页面是本站的「Baidu MIP」版。发表评论请点击:完整版 »