Langage

ArrayList Classe

Définition

Implémentation de tableau redimensionnable de l’interface List .

[Android.Runtime.Register("java/util/ArrayList", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public class ArrayList : Java.Util.AbstractList, IDisposable, Java.IO.ISerializable, Java.Lang.ICloneable, Java.Util.IRandomAccess
[<Android.Runtime.Register("java/util/ArrayList", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type ArrayList = class
    inherit AbstractList
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface ICloneable
    interface IList
    interface ICollection
    interface IIterable
    interface ISequencedCollection
    interface IRandomAccess
Héritage
Attributs
Implémente

Remarques

Implémentation de tableau redimensionnable de l’interface List . Implémente toutes les opérations de liste facultatives et autorise tous les éléments, y compris null. Outre l’implémentation de l’interface List , cette classe fournit des méthodes pour manipuler la taille du tableau utilisé en interne pour stocker la liste. (Cette classe est à peu près équivalente à Vector, sauf qu’elle n’est pas synchronisée.)

Les sizeopérations , isEmptygetsetiteratoret listIterator s’exécutent en temps constant. L’opération add s’exécute en temps constant amorti, autrement dit, l’ajout de n éléments nécessite le temps O(n). Toutes les autres opérations s’exécutent en temps linéaire (à peu près). Le facteur constant est faible par rapport à celui de l’implémentation LinkedList .

Chaque ArrayList instance a une capacité. La capacité est la taille du tableau utilisé pour stocker les éléments dans la liste. Il est toujours au moins aussi grand que la taille de liste. À mesure que des éléments sont ajoutés à un TableauList, sa capacité augmente automatiquement. Les détails de la stratégie de croissance ne sont pas spécifiés au-delà du fait que l’ajout d’un élément a un coût de temps amorti constant.

Une application peut augmenter la capacité d’une ArrayList instance avant d’ajouter un grand nombre d’éléments à l’aide de l’opération ensureCapacity . Cela peut réduire la quantité de réaffectation incrémentielle.

< >notez que cette implémentation n’est pas synchronisée.</strong> Si plusieurs threads accèdent simultanément à une ArrayList instance et qu’au moins un des threads modifie la liste structurellement, il doit être synchronisé en externe. (Une modification structurelle est toute opération qui ajoute ou supprime un ou plusieurs éléments, ou redimensionne explicitement le tableau de stockage ; il suffit de définir la valeur d’un élément n’est pas une modification structurelle.) Cela s’effectue généralement en synchronisant sur un objet qui encapsule naturellement la liste.

Si aucun objet de ce type n’existe, la liste doit être « encapsulée » à l’aide de la Collections#synchronizedList Collections.synchronizedList méthode. Cela est le mieux fait au moment de la création pour empêcher l’accès non synchronisé accidentel à la liste :

List list = Collections.synchronizedList(new ArrayList(...));

Les itérateurs retournés par les méthodes et les méthodes de #iterator() iterator cette classe sont #listIterator(int) listIteratorem<fail-fast>/em< : si la liste est structurellement modifiée à tout moment après la création de l’itérateur, à tout moment, sauf par le biais des propres > ou ListIterator#remove() remove méthodes de l’itérateur, l’itérateur lève un ListIterator#add(Object) add.ConcurrentModificationException Par conséquent, face à la modification simultanée, l’itérateur échoue rapidement et correctement, plutôt que de risquer un comportement arbitraire et non déterministe à un moment indéterminé à l’avenir.

Notez que le comportement de défaillance rapide d’un itérateur ne peut pas être garanti, en général, impossible d’apporter des garanties difficiles en présence d’une modification simultanée non synchronisée. Les itérateurs à vitesse d’échec lèvent ConcurrentModificationException un meilleur effort. Par conséquent, il serait incorrect d’écrire un programme qui dépendait de cette exception pour son exactitude : le comportement d’itérateur à échec doit être utilisé uniquement pour détecter les bogues.

Cette classe est membre de l’infrastructure de collections Java.

Ajouté dans la version 1.2.

Java documentation pour java.util.ArrayList.

Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.

Constructeurs

Nom Description
ArrayList()

Construit une liste vide avec une capacité initiale de dix.

ArrayList(ICollection)

Construit une liste contenant les éléments de la collection spécifiée, dans l’ordre dans lequel elles sont retournées par l’itérateur de la collection.

ArrayList(Int32)

Construit une liste vide avec la capacité initiale spécifiée.

ArrayList(IntPtr, JniHandleOwnership)

Constructeur utilisé lors de la création de représentations managées d’objets JNI ; appelée par le runtime.

Propriétés

Nom Description
Class

Retourne la classe runtime de ce Object.

(Hérité de Object)
First

À ajouter

Handle

Handle de l’instance Android sous-jacente.

(Hérité de Object)
IsEmpty

À ajouter

(Hérité de AbstractCollection)
JniIdentityHashCode

Obtient le code de hachage d’identité affecté à cet homologue Java par le runtime d’interopérabilité.

(Hérité de Object)
JniManagedPeerState

Implémentation de tableau redimensionnable de l’interface List .

(Hérité de JavaObject)
JniPeerMembers

Implémentation de tableau redimensionnable de l’interface List .

Last

À ajouter

ModCount

Nombre de fois où cette liste a été modifiée structurellement.

(Hérité de AbstractList)
PeerReference

Obtient la référence d’objet JNI pour cet homologue Java.

(Hérité de Object)
ThresholdClass

Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code.

ThresholdType

Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code.

Méthodes

Nom Description
Add(Int32, Object)

À ajouter

(Hérité de AbstractList)
Add(Object)

À ajouter

(Hérité de AbstractCollection)
AddAll(ICollection)

À ajouter

(Hérité de AbstractCollection)
AddAll(Int32, ICollection)

À ajouter

(Hérité de AbstractList)
AddFirst(Object)

À ajouter

AddLast(Object)

À ajouter

Clear()

À ajouter

(Hérité de AbstractCollection)
Clone()

Retourne une copie superficielle de cette ArrayList instance.

Construct(JniObjectReference, JniObjectReferenceOptions)

Implémentation de tableau redimensionnable de l’interface List .

(Hérité de JavaObject)
Contains(Object)

À ajouter

(Hérité de AbstractCollection)
ContainsAll(ICollection)

À ajouter

(Hérité de AbstractCollection)
Dispose()

Libère les ressources détenues par cet homologue Java.

(Hérité de Object)
Dispose(Boolean)

Libère les ressources détenues par cet homologue Java.

(Hérité de Object)
DisposeUnlessReferenced()

Implémentation de tableau redimensionnable de l’interface List .

(Hérité de JavaObject)
EnsureCapacity(Int32)

Augmente la capacité de cette ArrayList instance, si nécessaire, pour s’assurer qu’elle peut contenir au moins le nombre d’éléments spécifiés par l’argument de capacité minimale.

Equals(Object)

Implémentation de tableau redimensionnable de l’interface List .

(Hérité de JavaObject)
Equals(Object)

Indique si un autre objet est « égal à » celui-ci.

(Hérité de Object)
ForEach(IConsumer)

Implémentation de tableau redimensionnable de l’interface List .

Get(Int32)

Retourne l’élément à la position spécifiée dans cette liste.

GetHashCode()

Retourne une valeur de code de hachage pour l'objet.

(Hérité de Object)
IndexOf(Object)

À ajouter

(Hérité de AbstractList)
Iterator()

Retourne un itérateur sur les éléments de cette liste dans une séquence appropriée.

(Hérité de AbstractList)
JavaFinalize()

Appelé par le garbage collector sur un objet lorsque le garbage collection détermine qu’il n’y a plus de références à l’objet.

(Hérité de Object)
LastIndexOf(Object)

À ajouter

(Hérité de AbstractList)
ListIterator()

À ajouter

(Hérité de AbstractList)
ListIterator(Int32)

À ajouter

(Hérité de AbstractList)
Notify()

Réveille un thread unique qui attend le moniteur de cet objet.

(Hérité de Object)
NotifyAll()

Réveille tous les threads qui attendent le moniteur de cet objet.

(Hérité de Object)
Remove(Int32)

À ajouter

(Hérité de AbstractList)
Remove(Object)

À ajouter

(Hérité de AbstractCollection)
RemoveAll(ICollection)

À ajouter

(Hérité de AbstractCollection)
RemoveFirst()

À ajouter

RemoveIf(IPredicate)

Implémentation de tableau redimensionnable de l’interface List .

RemoveLast()

À ajouter

RemoveRange(Int32, Int32)

Supprime de cette liste tous les éléments dont l’index est compris, fromIndexinclus et toIndexexclusif.

(Hérité de AbstractList)
ReplaceAll(IUnaryOperator)

Implémentation de tableau redimensionnable de l’interface List .

RetainAll(ICollection)

À ajouter

(Hérité de AbstractCollection)
Set(Int32, Object)

À ajouter

(Hérité de AbstractList)
SetHandle(IntPtr, JniHandleOwnership)

Définit la propriété Handle.

(Hérité de Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Implémentation de tableau redimensionnable de l’interface List .

(Hérité de JavaObject)
Size()

Retourne le nombre d’éléments de cette liste.

Sort(IComparator)

Implémentation de tableau redimensionnable de l’interface List .

Spliterator()

Crée une <>liaison em late-binding</em> et <em>fail-fast</em>Spliterator sur les éléments de cette liste.

SubList(Int32, Int32)

À ajouter

(Hérité de AbstractList)
ToArray()

À ajouter

(Hérité de AbstractCollection)
ToArray(Object[])

À ajouter

(Hérité de AbstractCollection)
ToArray<T>()

Crée un tableau managé à partir de ce wrapper de tableau Java.

(Hérité de Object)
ToString()

Retourne une représentation de chaîne de l'objet.

(Hérité de Object)
TrimToSize()

Supprime la capacité de cette ArrayList instance pour être la taille actuelle de la liste.

UnregisterFromRuntime()

Annule l’inscription de cet homologue Java à partir du runtime d’interopérabilité.

(Hérité de Object)
Wait()

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti par em ou><em>interrompu</em>.<>

(Hérité de Object)
Wait(Int64, Int32)

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée.

(Hérité de Object)
Wait(Int64)

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée.

(Hérité de Object)

Implémentations d’interfaces explicites

Nom Description
IJavaPeerable.Disposed()

Implémentation de tableau redimensionnable de l’interface List .

(Hérité de JavaObject)
IJavaPeerable.Finalized()

Implémentation de tableau redimensionnable de l’interface List .

(Hérité de JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Implémentation de tableau redimensionnable de l’interface List .

(Hérité de JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Implémentation de tableau redimensionnable de l’interface List .

(Hérité de JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Implémentation de tableau redimensionnable de l’interface List .

(Hérité de JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Implémentation de tableau redimensionnable de l’interface List .

(Hérité de JavaObject)
IJavaPeerable.UnregisterFromRuntime()

Implémentation de tableau redimensionnable de l’interface List .

Méthodes d’extension

Nom Description
GetJniTypeName(IJavaPeerable)

Obtient le nom JNI du type de l’instance self.

JavaAs<TResult>(IJavaPeerable)

Essayez de forcer self le typeTResult, en vérifiant que le forçage est valide côté Java.

JavaCast<TResult>(IJavaObject)

Effectue une conversion de type vérifiée par le runtime Android.

JavaCast<TResult>(IJavaObject)

Implémentation de tableau redimensionnable de l’interface List .

ToEnumerable(IIterable)

Implémentation de tableau redimensionnable de l’interface List .

ToEnumerable<T>(IIterable)

Implémentation de tableau redimensionnable de l’interface List .

TryJavaCast<TResult>(IJavaPeerable, TResult)

Essayez de forcer self le typeTResult, en vérifiant que le forçage est valide côté Java.

S’applique à