Pourquoi tant de méthodes utilisent-elles la collecte plutôt que itérable?

StackOverflow https://stackoverflow.com/questions/5963403

  •  12-11-2019
  •  | 
  •  

Question

Avec C # J'ai appris à aimer le IEnumerable<T> interface. Il y a beaucoup de cas où c'est tout ce que vous voulez donner et prendre en charge. De plus, il est utile dans la bibliothèque .NET. Vous avez par exemple un constructeur sur le List<T> classe qui prend un IEnumerable<T>.

Je dois travailler avec Java en ce moment, et je voulais naturellement utiliser l'équivalent Iterable<T> interface. Cependant, il ne semble pas vraiment que je puisse l'utiliser n'importe où. Tout semble utiliser le Collection<T> interface à la place. Pourquoi est-ce?

Par exemple, vous avez le ArrayList<T> constructeur qui prend un Collection<T>:

Construit une liste contenant les éléments de la collection spécifiée, dans l'ordre où ils sont retournés par l'itérateur de la collection.

Pourquoi ne pas simplement prendre un Iterable<T> Au lieu?

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top