Hallo,
wie soll ich sagen, ich habe gerade eine Klasse geschrieben und wenn ich mir jetzt so die add()-methode
ansehe, weiss ich nicht so recht ob man sowas überhaupt so machen sollte.
D.h. meine Frage ist ganz einfach, ob das okay so ist oder total sinnlos bzw sogar schlecht/dumm, weil ich
jetzt nicht wirklich weiss ob das guter Programmierstil ist:
Es geht eben um add() und die Sache, dass ich die ArrayList nicht mit einem Wert initialisere, sondern immer
wenn was hinzugefügt wird sicherstelle, dass Platz ist.
Konkret sind es eig. 2 Fragen:
1)
log.ensureCapacity(log.size() + 1);
bei jedem add-Aufruf, ist das okay oder erzeugt das vllt zuviel Ressourcen-Leichen oder sonst was nach der Zeit?
2)
trimToSize()
macht das überhaupt Sinn? Ich meine wofür ist diese Methode denn wirklich gedacht, man kann doch per size() immer rausfinden wieviel wirklich drin ist? Also was soll die und hat es Sinn, dass ich die da verwende?
Danke
wie soll ich sagen, ich habe gerade eine Klasse geschrieben und wenn ich mir jetzt so die add()-methode
ansehe, weiss ich nicht so recht ob man sowas überhaupt so machen sollte.
D.h. meine Frage ist ganz einfach, ob das okay so ist oder total sinnlos bzw sogar schlecht/dumm, weil ich
jetzt nicht wirklich weiss ob das guter Programmierstil ist:
Code:
public class Log {
private static ArrayList<String> log = new ArrayList<String>();
public static void add(String message) {
log.ensureCapacity(log.size() + 1);
log.add(message);
log.trimToSize();
}
}
Es geht eben um add() und die Sache, dass ich die ArrayList nicht mit einem Wert initialisere, sondern immer
wenn was hinzugefügt wird sicherstelle, dass Platz ist.
Konkret sind es eig. 2 Fragen:
1)
log.ensureCapacity(log.size() + 1);
bei jedem add-Aufruf, ist das okay oder erzeugt das vllt zuviel Ressourcen-Leichen oder sonst was nach der Zeit?
2)
trimToSize()
macht das überhaupt Sinn? Ich meine wofür ist diese Methode denn wirklich gedacht, man kann doch per size() immer rausfinden wieviel wirklich drin ist? Also was soll die und hat es Sinn, dass ich die da verwende?
Danke