La classe Array est la classe de base pour les implémentations du langage qui prennent en charge les tableaux. Cependant, seuls les compilateurs et le système peuvent dériver explicitement de la classe Array. Les utilisateurs doivent employer les constructions de tableaux fournies par le langage.
Un élément est une valeur contenue dans Array. La longueur de Array est le nombre total d'éléments qu'il peut contenir. Le rang de Array représente le nombre de dimensions dans ce Array. La limite inférieure d'une dimension de Array est l'index de départ de cette dimension de Array. Un Array multidimensionnel peut posséder différentes limites pour chaque dimension.
Remarque importante : |
|---|
Dans le .NET Framework version 2.0, la classe Array implémente les interfaces génériques System.Collections.Generic..::.IList<(Of <(T>)>), System.Collections.Generic..::.ICollection<(Of <(T>)>) et System.Collections.Generic..::.IEnumerable<(Of <(T>)>). Les implémentations sont fournies aux tableaux au moment de l'exécution et ne sont donc pas visibles pour les outils de génération de documentation. En conséquence, les interfaces génériques n'apparaissent pas dans la syntaxe de déclaration de la classe Array et il n'existe pas de rubrique de référence pour les membres d'interface qui sont uniquement accessibles en castant un tableau en type d'interface générique (implémentations d'interface explicites). Vous devez garder à l'esprit que lorsque vous castez un tableau vers l'une de ces interfaces, ces membres qui ajoutent, insèrent ou suppriment des éléments lèvent NotSupportedException. |
Les objets Type fournissent des informations sur les déclarations de type tableau. Les objets Array ayant le même type tableau partagent le même objet Type.
Il se peut que Type..::.IsArray et Type..::.GetElementType ne retournent pas les résultats attendus avec Array, car si un tableau est casté en type Array, le résultat est un objet, et non pas un tableau. Cela signifie que typeof(System.Array).IsArray retourne false et que typeof(System.Array).GetElementType retourne nullNothingnullptrune référence null (Nothing en Visual Basic).
Contrairement à la plupart des classes, Array fournit la méthode CreateInstance plutôt que des constructeurs publics, permettant ainsi l'accès à liaison tardive.
La méthode Array..::.Copy copie les éléments non seulement entre les tableaux du même type, mais également entre les tableaux standard de types différents. Elle gère le casting de type automatiquement.
Certaines méthodes, telles que CreateInstance, Copy, CopyTo, GetValue et SetValue, fournissent des surcharges qui acceptent les entiers 64 bits en tant que paramètres, afin de prendre en charge les tableaux de grande capacité. LongLength et GetLongLength retournent des entiers 64 bits indiquant la longueur du tableau.
Le tri du Array n'est pas garanti. Vous devez trier le Array avant d'exécuter des opérations (telles que BinarySearch) qui exigent le tri du Array.