Wie zu verwenden ListBuffer in scala?

Habe ich eine situation, wo ich bin vorbei ein einzelnes element der Liste um eine Methode. Innerhalb dieser Methode, das einzelne element in der Liste um eins erhöht. So, dass nach Aufruf der Methode wird die Liste zum ersten element wird modifiziert ( um eins erhöht).

Code ist wie folgt:

val ct = List(5)

someMethod(ct)

println (ct(0))

//should print 6

......

//within somethod, I incrment the element like:
def someMethod(ct: List[Int}) {
    ct(0) = ct(0) + 1
}

Natürlich obige code funktioniert nicht in der Scala. Ich schaute auf ListBuffer aber ich finde die scala doc schwer zu Folgen. Scala doc ist in 2 Gruppen unterteilt: Typ Mitglieder und Wert Mitglieder. In Typ Mitglied es ist Klasse WithFiler und Wert Mitglieder hat viele Methoden. Wie kann ich WithFiler ( wahrscheinlich nicht direkt mit dieser Frage, aber ich möchte verstehen, wie zu nutzen, von scala doc).

ListBuffer zu sein scheint, die richtige Lösung für dieses problem, wenn ich will, sehr hohe Leistung haben (die someMethod genannt wird millionenfach) ( korrigiert mich wenn ich falsch Liege).

So, wie lösen Sie obiges problem, wenn ListBuffer ist die richtige Art von Liste und wenn nicht, was ist die Lösung?

  • Das sind zwei verschiedene Fragen, wirklich-eine in Bezug auf die Verwendung ListBuffer, und die anderen im Zusammenhang zu verstehen, Scaladoc Typ Mitglieder und Wert Mitglieder. Bitte Fragen Sie die letztere Frage separat.
InformationsquelleAutor rjc | 2011-07-04
Schreibe einen Kommentar