zoukankan      html  css  js  c++  java
  • [GO]errorr接口的使用

    package main
    
    import (
        "fmt"
        "errors"
    )
    
    func main() {
        erro1 := fmt.Errorf("%s", "this is a nomal erorr")
        fmt.Println("error1 = ", erro1)
        error2 := errors.New("this is a normal error")
        fmt.Println("eror2 = ", error2)
    }

    这里打印的结果就很简单了,就是打印了两行的this sis a normal error

    但是这里需要强调的是error里的New方法,可以看看源码

    通过源码我们可以学习到一个规范的接口是怎么写成的

    package main
    
    import (
        "errors"
        "fmt"
    )
    
    func MyDiv(a, b int) (result int, err error) { //这里定义了err为error的接口类型
        err = nil
        if b == 0 {
            err = errors.New("分母不能为0")
        }else {
            result = a / b
        }
        return
    }
    
    func main() {
        result, err := MyDiv(10, 2)
        if err != nil {
            fmt.Println("error = ", err)
        }else {
            fmt.Println("reuslt = ", result)
        }
    }

    如果b为不为零输结果,如果为0则输出报错信息

  • 相关阅读:
    软件测试课堂练习1
    安卓增删改查
    安卓数据库表
    安卓注册登录
    安卓购物清单
    安卓计算器
    第四周安卓作业
    第七周作业
    jsp第六周
    第四次jsp作业
  • 原文地址:https://www.cnblogs.com/baylorqu/p/9658080.html
Copyright © 2011-2022 走看看