Wie gesagt, eine Lösung über ein Array (toArray()-Methode von Collection) kann für bestimmte Implementierungen (z.B. ArrayList) schneller sein als ein Iterator.
Weißt du denn nicht, von welcher Art die Collections sind, die du aufteilen willst (und welche sollen überhaupt erzeugt werden)?