错误处理

Golang

错误处理
首先要引入 errors 套件,大致上的用法是使用 errors.New("text"),来实现error 输出错误讯息。
记得要使用import errors,可以复制程序码来跑看看以下的范例,看看结果如何

package main

import (
    "fmt"
    "errors"
)

func Hello(name string) (string, error) {

    if name == "" {
        return "", errors.New("name is empty")
    }

    message := fmt.Sprintf("Hi, %v. Welcome!", name)
    return message, nil
}

func main() {

    message, err := Hello("")

    if err != nil {
         fmt.Println(err)
    }

    fmt.Println(message)
}

使用nil来判断err

loop
忘记有没有特别讲golang的loop跟sleep该如何使用,就当我骗骗篇幅吧!

sum := 0
for i := 0 ; i < 10 ; ++i {
    sum += i
}

或者使用这种方式
i := 0
for i < 100 {
    i += 1
}

sleep
如果有时候需要sleep的时候,该如何使用呢?

package main 
  

import ( 
    "fmt"
    "time"
) 
  
// Main function 
func main() { 
  
    fmt.Println("Start")
 
    time.Sleep(5 * time.Second) 

    fmt.Println("Sleep Over.....") 
}

我个人感觉是跟PHP很像啦,好像没啥好解释的,大概就是要注意有特别使用了time这个套件,大概跟时间日期有关的都是使用他。

time

package main 
  

import ( 
    "fmt"
    "time"
) 
  
// Main function 
func main() { 
  

fmt.Println(time.Now()) // 取得现在时间

fmt.Println(time.Now().Hour()) // 取得现在是几点
fmt.Println(time.Now().Month()) // 取得现在是几点
fmt.Println(time.Now().Year()) // 取得现在是几年
fmt.Println(time.Now().Weekday()) // 取得今天是星期几
fmt.Println(time.Now().Weekday() + 5) // 今天是星期几往後推 5 天


}

<<:  文章内搜寻,doc docx txt 子目录下所有档 (Python)

>>:  第11天 - PHP修改MySQL资料表内容

Day27 建立使用者及Claim功能

前面说过ASP.NET Core Identity 是基於 Claim 的验证,而 Role 就是型...

[Day 12] 资料产品生命周期管理-加工资料(一)

加工资料泛指各种处理资料的行为,这部分要一篇文章写完真滴难,所以就也只能蜻蜓点水的各介绍一点,让大家...

DNS 服务器之间的区域传输(Zone transfer)

-防火墙接口和区域 防火墙通常以两种方式调解网络流量:基於上下文和基於区域。传统的基於上下文的方法...

Day 11: 人工智慧在音乐领域的应用 (机器学习/深度学习与类神经网路二)

机器学习简介 (Machine Learning, ML) 机器学习是一种透过资料、特徵撷取以及训练...

DAY7 - 图

之後会有几天与图相关的演算法,所以今天先看一下表示方式~~ 边 1135. 最低成本联通所有城市这题...