go返回多个errors

起因

有时候大家可能需要返回多个errors的场景,所以这个时候可能就会考虑如何实现、怎么实现比较好

实现

package main

import (
    "errors"
    "fmt"
)

func main() {
    errs := retErrors("hello,world")
    fmt.Println(errs)
}

func retErrors(tst string) []error {
    var errs []error
    if tst != "hello" {
       errs = append(errs, errors.New("err hello"))
    }
    if tst != "world" {
       errs = append(errs, errors.New("err world"))
    }
    return errs
}

可以类似reterrors的实现,并且做一些map去重,list排序等处理,让整体更加有序合理

你可能感兴趣的:(golang,开发语言,后端)