Maison >développement back-end >Golang >tableau golang supprimer un élément

tableau golang supprimer un élément

王林
王林original
2023-05-15 09:03:37662parcourir

Dans Golang, supprimer des éléments de tableau est une tâche relativement lourde. Étant donné que la longueur d’un tableau est déterminée lors de sa création, les éléments ne peuvent pas être facilement supprimés ou ajoutés. En comparaison, les tranches constituent un meilleur choix car elles peuvent ajuster dynamiquement la longueur selon les besoins. Cependant, si vous travaillez déjà avec un tableau et que vous devez en supprimer certains éléments, voici quelques façons d'y parvenir.

  1. Attribuez à l'élément à supprimer une valeur nulle
    C'est la méthode la plus simple. L'élément à supprimer peut être remplacé par la valeur nulle de son type. Par exemple, si les éléments du tableau sont des chaînes, vous pouvez remplacer la chaîne que vous souhaitez supprimer par une chaîne vide. Si l'élément du tableau est un nombre, vous pouvez le remplacer par zéro.

Voici un exemple de code pour implémenter cette méthode :

func deleteElement(arr []int, index int) []int {
arr[index] = 0
return arr
}

  1. Utilisez append()
    Une autre façon consiste à utiliser la fonction append(). Lorsque vous utilisez cette méthode, vous devez créer une nouvelle tranche, puis copier les éléments que vous souhaitez conserver dans la nouvelle tranche. Les éléments qui doivent être supprimés peuvent être ignorés pendant le processus de copie. Enfin, le tableau d'origine est écrasé par la nouvelle tranche. Notez que cette méthode ne peut être utilisée qu'avec des tableaux, pas avec des pointeurs vers des tableaux.

Ce qui suit est un exemple de code pour implémenter cette méthode :

func deleteElement(arr []int, index int) []int {
newSlice := make([]int, len(arr)-1)
copy ( newSlice, arr[:index])
copy(newSlice[index:], arr[index+1:])
return newSlice
}

  1. Utilisez des tranches au lieu de tableaux
    Si vous devez ajouter ou supprimer des éléments fréquemment, utilisez des tranches pour remplacer les tableaux. Les tranches peuvent s'agrandir et ajuster leur longueur de manière dynamique, ce qui les rend plus flexibles.

Par exemple, le code suivant utilise des tranches au lieu de tableaux :

package main

import "fmt"

func main() {
var slice []int = []int{1, 2, 3, 4 , 5, 6}
fmt.Println(slice) // [1 2 3 4 5 6]
slice = append(slice[:2], slice[3:]...)
fmt.Println(slice) / / [1 2 4 5 6]
}

Ici, nous déclarons d'abord une tranche de type int et initialisons sa valeur. Ensuite, utilisez la fonction append() pour supprimer des éléments de la tranche.

Résumé
Bien que la suppression d'éléments de tableau dans Golang soit fastidieuse, elle peut être facilement réalisée en utilisant ces trois méthodes. Si vous devez ajouter ou supprimer des éléments fréquemment, il est préférable d'utiliser le découpage. Si vous ne savez pas comment implémenter cela, veuillez vous référer à l'exemple de code ci-dessus.

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!

Déclaration:
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