Comment puis-je copier une partie d'un tableau dans un autre tableau?
Considérez que j'ai
int[] a = {1,2,3,4,5};
Maintenant, si je donne l'index de début et l'index de fin du tableau, a
il devrait être copié dans un autre tableau.
Comme si je donne l'index de début à 1 et l'index de fin à 3, les éléments 2, 3, 4 devraient être copiés dans le nouveau tableau.
Voir cette question . LINQ Take () et Skip () sont les réponses les plus populaires, ainsi que Array.CopyTo ().
Une méthode d'extension prétendument plus rapide est décrite ici .
la source
Où Array est une classe ayant la méthode Copy, qui copie l'élément d'un tableau dans un tableau b.
Lors de la copie d'un tableau vers un autre tableau, vous devez fournir le même type de données à un autre tableau que vous copiez.
la source
Remarque: j'ai trouvé cette question à la recherche de l'une des étapes de la réponse pour redimensionner un tableau existant.
J'ai donc pensé ajouter ces informations ici, au cas où quelqu'un d'autre chercherait comment faire une copie à distance comme réponse partielle à la question du redimensionnement d'un tableau.
Pour quiconque trouve cette question à la recherche de la même chose que moi, c'est très simple:
où T est le type, c'est-à-dire où arrayVariable est déclaré:
Cette méthode gère les vérifications nulles, ainsi que newSize == oldSize sans effet, et bien sûr gère silencieusement le cas où l'un des tableaux est plus long que l'autre.
Consultez l'article MSDN pour en savoir plus.
la source
Si vous souhaitez implémenter votre propre méthode Array.Copy .
Méthode statique qui est de type générique.
Implémentation de la méthode aux limites.
la source