Maison >développement back-end >Golang >tableau golang supprimer
Golang est un langage fortement typé et ses tableaux sont de longueur fixe, ce qui signifie que la longueur du tableau doit être spécifiée lors de sa déclaration et que la longueur du tableau ne peut pas être modifiée lors d'une utilisation ultérieure. Cela peut être très gênant dans certains scénarios. Par exemple, nous devons supprimer un élément d'un tableau, mais nous devons nous assurer que la longueur du tableau reste inchangée.
Dans ce cas, nous pouvons utiliser certaines techniques pour réaliser l'opération de suppression d'éléments du tableau. Cet article présentera deux techniques courantes de suppression de tableaux Golang.
1. Utilisez l'opération d'interception de tranche pour supprimer des éléments
Slice est un type de référence, qui peut contenir tout type d'éléments et peut croître et rétrécir dynamiquement. Grâce à l'opération d'interception de découpage, nous pouvons facilement supprimer des éléments dans un tableau Golang. Les étapes spécifiques de l'opération sont les suivantes :
arr := [5]int{1, 2, 3, 4, 5}. # 🎜🎜#
index := 2
arr = append(arr[:index], arr[index+1:]...)
package main import "fmt" func main() { arr := [5]int{1, 2, 3, 4, 5} index := 2 arr = append(arr[:index], arr[index+1:]...) fmt.Println(arr) }Le résultat de l'exécution est :
[1 2 4 5]Nous pouvons voir que le troisième élément a été supprimé avec succès. 2. Utilisez l'opération d'inversion de tranche pour supprimer des éléments En plus d'utiliser l'opération d'interception de tranche, nous pouvons également supprimer des éléments du tableau Golang via l'opération d'inversion de tranche. Les étapes spécifiques sont les suivantes :
Définir un tableau Golang
arr := [5]int{1, 2, 3, 4, 5}
index := 2
for i, j := 0, len(arr)-1; i < j; i, j = i+1, j-1 { arr[i], arr[j] = arr[j], arr[i] }
arr = arr[:len(arr)-1]
for i, j := 0, len(arr)-1; i < j; i, j = i+1, j-1 { arr[i], arr[j] = arr[j], arr[i] }
package main import "fmt" func main() { arr := [5]int{1, 2, 3, 4, 5} index := 2 for i, j := 0, len(arr)-1; i < j; i, j = i+1, j-1 { arr[i], arr[j] = arr[j], arr[i] } arr = arr[:len(arr)-1] for i, j := 0, len(arr)-1; i < j; i, j = i+1, j-1 { arr[i], arr[j] = arr[j], arr[i] } fmt.Println(arr) }
[1 2 4 5]On peut également voir que le troisième élément a été supprimé avec succès . RésuméGrâce à cet article, nous avons appris que même si les tableaux Golang sont de longueur fixe, nous pouvons toujours utiliser certaines techniques pour réaliser des opérations de suppression d'éléments, comme l'utilisation d'opérations d'interception de tranches. et des opérations d'inversion de tranche. Cependant, il convient de noter que puisque la longueur du tableau est fixe, ces opérations généreront une surcharge supplémentaire, donc les opérations de suppression fréquentes doivent être évitées en utilisation réelle pour garantir les performances du programme.
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!