Maison > développement back-end > Golang > Comment puis-je convertir idiomatiquement une tranche []byte en un int64 dans Go ?

Comment puis-je convertir idiomatiquement une tranche []byte en un int64 dans Go ?

Linda Hamilton
Libérer: 2024-12-08 20:42:14
original
555 Les gens l'ont consulté

How Can I Idiomatically Convert a []byte Slice to an int64 in Go?

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)
}
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal