Amélioration de l'idiome du code dans Go : convertir []byte Slice en int64
La question centrale de l'article se concentre sur la recherche d'une approche plus idiomatique dans Go pour convertir une tranche d'octets [] en un type de données int64. Bien que le code fourni offre une solution viable, il lui manque l'élégance et l'efficacité qui caractérisent la programmation idiomatique Go.
Pour améliorer le langage du code, nous pouvons tirer parti de la capacité de Go à manipuler efficacement les tranches. Au lieu de parcourir manuellement la tranche et d'effectuer des opérations au niveau du bit, nous pouvons simplifier le processus en utilisant une boucle à plage unique qui parcourt chaque octet de la tranche.
Le code optimisé ci-dessous illustre cette approche :
func main() { var mySlice = []byte{244, 244, 244, 244, 244, 244, 244, 244} var data int64 = 0 for _, b := range mySlice { data = (data << 8) | int64(b) } fmt.Printf("%d\n", data) }
Avec cet ajustement, le code devient plus succinct et lisible, s'alignant mieux sur le style idiomatique de Go. L'utilisation de la boucle de plage simplifie le fonctionnement au niveau du bit et améliore la clarté globale et la maintenabilité du code.
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!