题解 | #视频媒体标签属性#

网络延迟

http://www.nowcoder.com/practice/33dffe16f4554089aa5841b1c49a2bd0

// 第一种方式是使用golang标准库包errors 来定义错误。
func defineerr( ping int ) string {
    // write code here
    if ping > 100 {
        return errors.New("网络延迟").Error()
    }
    return ""
}

// 第二种方式是借用struct结构体,创建一个struct的Error()方法,注意这个方法名是Error,不然会出现找不到Error方法。
func defineerr( ping int ) string {
    // write code here
    if ping > 100 {
        return NetworkDelayError{}.Error()
    }
    return ""
}

type NetworkDelayError struct {

}

func (n NetworkDelayError) Error() string{
    return fmt.Sprintf("网络延迟")
}

// 帮助进一步理解Error, 自测输入150, 实际输出"延迟了150毫秒"
func defineerr( ping int ) string {
    // write code here
    if ping > 100 {
        return NetworkDelayError{delayCnt: ping}.Error()
    }
    return "网络正常"
}

type NetworkDelayError struct {
    delayCnt int // 延迟的毫秒数
}

func (n NetworkDelayError) Error() string{
    return fmt.Sprintf("延迟了%d毫秒", n.delayCnt)
}

全部评论

相关推荐

在看牛客的社畜很积极:身高体重那一行信息去掉,学校那一行的信息放上面,找半天都没找到你是哪个学校什么专业的
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务