J'utilise la méthode AddRange
de la classe ArrayList
et je trouve par exemple:Interface ICollection et AddRange C#/NET
ArrayList myAL = new ArrayList();
Queue myQueue = new Queue();
myQueue.Enqueue("jumped");
myQueue.Enqueue("over");
myQueue.Enqueue("the");
myQueue.Enqueue("lazy");
myQueue.Enqueue("dog");
// Copies the Queue elements to the end of the ArrayList.
myAL.AddRange(myQueue);
AddRange
a un paramètre de type ICollection
, mais dans l'exemple, je peux donner Queue
classe (probablement parce que La classe Queue
est héritée de l'interface ICollection
). Peut somebode m'expliquer ce qui se passe à l'appel AddRange
et copier Queue
type de classe dans le type d'interface ICollection
.
Je ne comprends pas votre question. Ce qui se passe, c'est que l'élément de ICollection est ajouté un par un à votre nouvelle liste. – HimBromBeere
Side-note: n'utilisez plus 'ArrayList', utilisez un 'Liste' générique. –
Je comprends la fonction. Mais que se passe-t-il sur le tas ou la pile si je copie l'objet File d'attente (myQueue) dans l'interface ICollection? Comment puis-je utiliser la classe Queue dans AddRange comme paramètre si AddRange attend l'interface ICollection? – leoleo