Multiplication de durées dans Go
Dans Go, lorsqu'ils tentent de multiplier une durée par un nombre entier, les développeurs peuvent rencontrer l'erreur : "opération invalide : int32 et time.Duration (types incompatibles int32 et time.Duration)." Cette erreur vient du fait que int32 et time.Duration sont de types différents.
Pour résoudre ce problème, il est nécessaire de convertir le int32 en time.Duration avant d'effectuer la multiplication. Cette conversion peut être réalisée en utilisant la syntaxe suivante :
time.Duration(rand.Int31n(1000)) * time.Millisecond
Dans cet exemple, la fonction rand.Int31n renvoie un int32 représentant un nombre aléatoire jusqu'à la limite spécifiée (dans ce cas, 1000). En convertissant cet int32 en time.Duration à l'aide de la conversion de type time.Duration, on peut ensuite multiplier par l'unité de durée souhaitée (dans ce cas, les millisecondes en utilisant la constante time.Millisecond).
En suivant ceci approche, les développeurs peuvent réussir à multiplier les durées par des nombres entiers dans Go et éviter l'erreur susmentionnée.
Ce 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!