Ich brauche eine Funktion, die in ein Array, eine Karte, eine Liste [ziemlich viele Container mit einer toIterator
Methode], iterieren und drucken Sie ihre Elemente.Scala generische, die Methode toIterator implementiert
Ich versuchte dies:
def method[CollectionT <: TraversableLike[Any, Any]](collection: CollectionT, numElements: Int) {
val iterator = collection.toIterator
for(i <- 0 until numElements) {
if(iterator.hasNext) {
println(iterator.next())
}
}
}
^Aber es für Array funktioniert nicht [T]
Wie kann ich eine genetische Funktion in Scala zu machen, die in jeder Instanz einer Klasse nehmen, die hat eine "toIterator: Iterator[A]
" Methode?
Ich würde vorschlagen, 'GenTraversableOnce' (oder' TraversableOnce' zu verwenden, wenn Sie parallele Sammlungen nicht zulassen möchten). –
@PaulDraper - GenTraversableOnce ist eine Superklasse von GenTraversable. Meinten Sie "Ich würde vorschlagen, GenTraversableOnce zu verwenden, wenn Sie parallele Sammlungen zulassen möchten?" –
@MichaelLafayette Ich denke Paul meinte "GenTraversableOnce" anstelle von "GenTraversable". –