Supponiamo che io ho un metodo che accetta un array ed elabora ogni elemento al suo interno usando del costruito in for-each loop, come questo Java:C'è un parametro che posso usare in Java che funzioni con tutti i cicli for-each?
public static void myFun(SomeClass[] arr) {
for (SomeClass sc : arr) {
// Stuff is processed here
}
}
Questo funziona bene, ma ora voglio essere in grado di passare il lo stesso metodo a List<SomeClass>
invece. Sono destinato a utilizzare Collection.toArray(T []) o esiste un parametro che posso utilizzare per myFun()
che accetta qualsiasi tipo che può essere utilizzato in un costrutto for-each?
Per chiarire: voglio una firma del metodo che accetti qualsiasi oggetto iterabile, sia esso una matrice primitiva o una raccolta. Posso facilmente scrivere due metodi, uno avvolge l'altro, ma sono curioso di sapere se c'è un modo migliore.
Purtroppo la risposta è no, poiché gli array non implementano Iterable. –