Maison > développement back-end > Golang > le corps du texte

Quelle est la différence entre les tableaux et les tranches en langage Go ?

青灯夜游
Libérer: 2023-01-11 09:23:06
original
14506 Les gens l'ont consulté

Différences : 1. Les tranches sont des types pointeurs, les tableaux sont des types valeur ; 2. La longueur des tableaux est fixe, mais les tranches ne le sont pas (les tranches peuvent être considérées comme des tableaux dynamiques) ; que l'attribut arrays (cap) ; 4. La couche inférieure de la tranche est un tableau.

Quelle est la différence entre les tableaux et les tranches en langage Go ?

L'environnement d'exploitation de cet article : système Windows10, Go 1.11.2, ordinateur Thinkpad T480.

Recommandations associées : "aller au tutoriel"

Que produit le code suivant ? Que sera le résultat si les commentaires sont supprimés ?

package main

import (
   "fmt"
)
func main() {
   a := [2]int{5, 6}
   b := [2]int{5, 6}
   if a == b {
      fmt.Println("equal")
   } else {
      fmt.Println("not equal")
   }
   /*
      if a[:] == b[:] {
          fmt.Println("equal")
      } else {
          fmt.Println("not equal")
      }
   */
}
Copier après la connexion

Sortie :

equal
Copier après la connexion

Supprimer l'invite de commentaire :

invalid operation: a[:] == b[:] (slice can only be compared to nil)
Copier après la connexion

Explication :

La différence entre les tableaux et les tranches dans le go langage

● Les tranches sont des types pointeurs, les tableaux sont des types valeur

● La longueur des tableaux est fixe, mais les tranches ne le sont pas (les tranches sont des tableaux dynamiques)

● Là il y a plus de tranches que de tableaux Un attribut : Capacité (cap)

● La couche inférieure de la tranche est un tableau

Par conséquent, a et b définissent des types de tableaux, et la comparaison des tableaux est la même

Cependant, a [:], b[:] sont des tranches. Un jugement d'égalité ne peut pas être effectué entre les tranches et ne peut être jugé qu'avec zéro.

Pour plus de connaissances sur la programmation, veuillez visiter la page. : Enseignement de la programmation ! !

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!

Étiquettes associées:
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal