Maison > développement back-end > Golang > Comment insérer des valeurs dans une tranche Go à un index donné ?

Comment insérer des valeurs dans une tranche Go à un index donné ?

Patricia Arquette
Libérer: 2024-11-15 08:50:02
original
715 Les gens l'ont consulté

How do you insert values into a Go slice at a given index?

Insérer des valeurs dans une tranche à un index donné

Dans Go, l'insertion de valeurs dans une tranche à un index spécifique nécessite un examen attentif des la longueur de la tranche, sa capacité et si l'index se situe dans ses limites.

Insertion à un index disponible

Si l'index que vous souhaitez insérer est dans la plage de les éléments existants de la tranche, vous pouvez utiliser l'approche suivante :

Cette approche :

  1. Crée une nouvelle tranche composée des éléments avant et après le point d'insertion (à l'exclusion du élément au point d'insertion).
  2. Insère la nouvelle valeur à l'index souhaité.

Insertion à un nouvel index

Si l'élément L'index auquel vous souhaitez insérer est supérieur à la longueur actuelle de la tranche, vous devez augmenter la capacité de la tranche pour accueillir le nouvel élément.

Cette approche :

  1. Vérifie si l'index dépasse la capacité de la tranche et, si nécessaire, crée une nouvelle tranche avec le double de la capacité.
  2. Insère la nouvelle valeur à l'index souhaité.

Insérer à la fin de la tranche

Pour insérer à la fin de la tranche, vous pouvez simplement ajouter la nouvelle valeur :

Utiliser les 'tranches' Package (pour Go 1.21)

Pour Go version 1.21 et supérieure, vous pouvez utiliser la fonction slices.Insert() du package github.com/golang/exp/slices :

Exemple :

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