Maison > Article > développement back-end > Comment utiliser des génériques pour écrire du code Golang plus général
La fonctionnalité Generics permet au langage Go d'écrire du code général pouvant être appliqué à plusieurs types de données. Il est implémenté en utilisant une variable de type générique, telle que le type MyType[T any], où T spécifie le type d'élément. Les génériques offrent les avantages suivants : Réutilisabilité du code : le code générique peut être appliqué simultanément à différents types sans qu'il soit nécessaire d'écrire du code spécifique au type. Code plus flexible : peut s'adapter à différents types d'entrée, simplifiant ainsi l'écriture de code pour une variété de scénarios. Sécurité du type : la vérification du type au moment de la compilation garantit la compatibilité et évite les erreurs liées au type.
Comment utiliser des génériques pour écrire du code plus général en langage Go
Les génériques sont une fonctionnalité importante récemment introduite dans le langage Go, qui nous permet d'écrire du code plus flexible et réutilisable. En utilisant des génériques, nous pouvons écrire du code pour fonctionner avec différents types de données sans avoir à écrire du code séparé pour chaque type.
Pour utiliser des génériques, nous devons utiliser des crochets [ ]
pour déclarer les variables de type générique. Par exemple : [ ]
声明泛型类型变量。例如:
type MyType[T any] struct { data []T }
在上面示例中,MyType
是一个泛型类型,可以接受任何类型的元素,类型由 T
指定。
下面是一个使用泛型编写的排序列表的实战案例:
// 功能:对列表进行排序 func Sort[T any](list []T, compare func(T, T) int) []T { // 拷贝列表 result := make([]T, len(list)) copy(result, list) // 使用内置的 Sort 包对其进行排序 sort.Slice(result, func(i, j int) bool { return compare(result[i], result[j]) < 0 }) return result }
在这个例子中,Sort
rrreee
MyType
est un type générique qui peut accepter des éléments de n'importe quel type, et le type est spécifié par T
. Cas pratique : Liste triéeVoici un cas pratique de tri d'une liste écrite à l'aide de génériques :Tri
est une fonction générique qui peut être utilisée pour n'importe quel tapez La liste est triée. Il accepte deux paramètres : une liste et une fonction de comparaison pour comparer les éléments de la liste. La valeur de retour est une liste triée. Avantages des génériquesCe qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!