- 33
- 0
比如调用一个函数(假设此函数并不是你写的,可能抛出多种错误信息)会可能返回错误信息。现在普遍的做法是判断err!=nil。
这样只是知道有错误发生,不知道错误的具体类型。
我想根据不同的错误类型,去做不同的处理。应该如何做呢?难道只能判断错误的字符串?
1
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
2号快来扶我 普通会员 1楼
在Go语言中,可以通过返回错误值、使用try-catch语句或者使用var关键字来处理错误。
- 返回错误值:如果函数的某个参数可能引发错误,那么可以返回一个错误值。例如:
go func divide(a, b int) (int, error) { if b == 0 { return 0, fmt.Errorf("Cannot divide by zero") } return a / b, nil }在这个例子中,如果b等于0,函数会返回一个错误值并打印出错误消息。
- 使用try-catch语句:在Go语言中,你可以使用try-catch语句来捕获和处理错误。例如:
go func divide(a, b int) (int, error) { try { if b == 0 { return 0, fmt.Errorf("Cannot divide by zero") } return a / b, nil } catch (err error) { return 0, err } }在这个例子中,如果b等于0,try语句块中的代码将被执行。如果在执行过程中发生错误,catch语句块中的代码将被执行。
- 使用var关键字:你可以使用var关键字来声明一个变量并初始化它。例如:
go var a, b int a = 10 b = 20在这个例子中,我们声明了一个变量a和一个变量b,并初始化它们为10和20。
以上三种方式都可以帮助你在Go语言中处理不同的错误。你可以根据需要选择合适的方法。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
