Site icon Kiến thức gia đình

Go – Xử lý lỗi

Kiến thức lập trình Golang (Go)

Lập trình Go cung cấp một khung xử lý lỗi khá đơn giản với kiểu giao diện lỗi có sẵn của khai báo sau:

type error interface {
   Error() string
}

Các hàm thường trả về lỗi dưới dạng giá trị trả về cuối cùng. Sử dụng lỗi. Mới để tạo một thông báo lỗi cơ bản như sau:

func Sqrt(value float64)(float64, error) {
   if(value < 0){
      return 0, errors.New("Math: negative number passed to Sqrt")
   }
   return math.Sqrt(value), nil
}

Sử dụng giá trị trả về và thông báo lỗi.

result, err:= Sqrt(-1)

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

Thí dụ

package main

import "errors"
import "fmt"
import "math"

func Sqrt(value float64)(float64, error) {
   if(value < 0){
      return 0, errors.New("Math: negative number passed to Sqrt")
   }
   return math.Sqrt(value), nil
}
func main() {
   result, err:= Sqrt(-1)

   if err != nil {
      fmt.Println(err)
   } else {
      fmt.Println(result)
   }
   
   result, err = Sqrt(9)

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

Khi đoạn mã trên được biên dịch và thực thi, nó tạo ra kết quả sau:

Math: negative number passed to Sqrt
3
Exit mobile version