返回
北京兄弟连IT
置顶
该校与厚学网暂未合作,平台不保证课程的真实有效性,如有侵权等争议,请及时与厚学网联系处理
招生热线:400-656-1390

学校地址:北京市昌平区回龙观文华西路育荣教育园区兄弟连IT教育

兄弟连区块链教程Go语言-错误处理

86 2018-08-24 14:35:05

学习笔记

  2018年时已过半,在今年的区块链热潮中,国内各家科技巨头均已粉墨登场,开始在这个新兴领域里抢占高地。但在具体布局细节上,几大巨头又各有不同,从中亦可窥见它们各自对区块链的重视程度和期许方向。

 

  兄弟连Go语言全栈与区块链技术培训课程是由清华、微软和谷歌名师历时半年时间研发出的独一无二的体系化课程。课程涵盖9大学习阶段,及多个企业级项目实战和来自世界顶尖区块链比赛作品,并由以微软区块链最具价值专家尹成为代表的清华系区块链团队亲临授课,综合提升学员的职场竞争力。

error类型是一个接口类型

 

type error interface {

    Error() string

}

实例分析

 

//定义一个Error结构

type DivideError struct {

   dividee int  //除数

   divider int  //被除数

}

 

//实现 error 接口

func (de *DivideError)Error()string  {

   //规定错误的格式

   strFormat := `  

    Cannot proceed, the divider is zero.

    dividee: %d

    divider: 0

`

   return fmt.Sprintf(strFormat,de.dividee)

}

 

//定义 int 类型除法运算的函数

func Divide(varDividee int, varDivider int)(result int, errorMsg string)   {

   if varDivider == 0 {

      dData := DivideError{

         dividee: varDividee,

         divider: varDivider,

      }

      errorMsg = dData.Error()

      return

   }else {

      return varDividee/varDivider,""

   }

}

 

func main() {

   //正常情况

   if result,errorMsg :=Divide(100,10);errorMsg =="" {

      fmt.Println("100/10 = ",result)

   }

   //当被除数为零的时候会返回错误信息

   if _,errorMsg := Divide(100,0);errorMsg!= "" {

      fmt.Println("errorMsg is: ",errorMsg)

   }

}

 

高能预警,兄弟连教育区块链直播课程8月持续火爆来袭!

原价1188元的12节区块链进阶课程,现仅需1元!

还可免费领取《Go语言基础实战项目开发》与《Go语言高级实战项目开发》教材两本!!

限时限量!!先到先得!!

http://www.ydma.cn/open/course/24


关注兄弟连区块链技术公众号领取更多技术干货哦!!!



文中图片素材来源网络,如有侵权请联系删除
来源:北京兄弟连IT
热门课程 全部课程

热门动态

申请免费试听

只要一个电话

我们为您免费回电

立即申请
刷新
图形验证
关闭
>>
拖动左边滑块完成上方拼图