When should I accept a parameter of Iterable vs. Collection in Java?
Many of the collection types existed before Iterable<T> (which was only introduced in 1.5) – there was little reason to add a constructor to accept Iterable<T> as well as Collection<T> but changing the existing constructor would have been a breaking change. Personally I would use Iterable<T> if that allows you to do everything you want … Read more