Trung BìnhGolang iconGolang

Generics trong Go (1.18+) hoạt động thế nào?

Generics cho phép viết function và type hoạt động với nhiều kiểu dữ liệu mà không cần lặp code, ví dụ func MapT any, U any U) []U nhận slice bất kỳ và trả về slice đã transform.

  • Type parameters được khai báo trong dấu ngoặc vuông [], kèm constraints để giới hạn kiểu được chấp nhận như any, comparable, hoặc custom interface constraints kiểu type Number interface { int | float64 }.
  • Trước Go 1.18, muốn viết hàm generic phải dùng interface{} rồi type assertion, vừa mất type safety vừa verbose; generics giải quyết triệt để vấn đề này.

Xem toàn bộ Golang cùng filter theo level & chủ đề con.

Mở danh sách Golang