Beim Erstellen von Klassen in Java finde ich häufig, dass Sammlungen auf Instanzebene, die ich im Voraus kenne, sehr klein sind - weniger als 10 Elemente in der Sammlung. Aber ich kenne die Anzahl der Artikel nicht im Voraus, daher entscheide ich mich normalerweise für eine dynamische Sammlung (ArrayList, Vector usw.).Verwenden kleiner Sammlungen (1-10 Elemente) auf Instanzebene in Java
class Foo
{
ArrayList<Bar> bars = new ArrayList<Bar>(10);
}
Ein Teil von mir an mich nörgelnde hält, dass es verschwenderisch komplexe dynamische Sammlungen für etwas so klein zu verwenden. Gibt es einen besseren Weg, so etwas zu implementieren? Oder ist das die Norm?
Hinweis, ich bin nicht mit irgendwelchen (spürbaren) Leistungsstrafen oder ähnliches konfrontiert. Ich frage mich nur, ob es keinen besseren Weg gibt, Dinge zu tun.
Gegenwärtige JVMs optimieren stark für Objektzuordnung und Müllsammlungsanliegen, die dazu fast immer unbegründet sind. –