Guten Morgen,
ich habe leider momentan keine Möglichkeit das selbst zu testen, deshalb die Frage an euch:
Ich habe eine ArrayList, aus der bestimmte Werte entfernt werden sollen. Diese Werte habe ich in einem Array stehen. Ich gehe also das komplette Array durch und entferne jedes Element aus der ArrayList, welches auch im Array steht. Soweit kein Problem, aber: Ich weiß, dass ca. die Hälfte der Werte in dem Array immer gleich ist, und dass diese Werte garantiert nicht in der ArrayList vorkommen (das Array hat eine Länge von ca. 5-15).
Was ist jetzt performanter? Einfach jedes Element (egal ob ich weiß, dass es u. U. gar nicht vorkommen kann) entfernen, oder vorher überprüfen, ob es sich um ein Element handelt, bei dem ich ein vorkommen in der ArrayList sicher ausschließen kann?
Um das festzustellen benötige ich keine equals Methode, sondern kann mit == überprüfen.
Bsp.:
Danke!
ich habe leider momentan keine Möglichkeit das selbst zu testen, deshalb die Frage an euch:
Ich habe eine ArrayList, aus der bestimmte Werte entfernt werden sollen. Diese Werte habe ich in einem Array stehen. Ich gehe also das komplette Array durch und entferne jedes Element aus der ArrayList, welches auch im Array steht. Soweit kein Problem, aber: Ich weiß, dass ca. die Hälfte der Werte in dem Array immer gleich ist, und dass diese Werte garantiert nicht in der ArrayList vorkommen (das Array hat eine Länge von ca. 5-15).
Was ist jetzt performanter? Einfach jedes Element (egal ob ich weiß, dass es u. U. gar nicht vorkommen kann) entfernen, oder vorher überprüfen, ob es sich um ein Element handelt, bei dem ich ein vorkommen in der ArrayList sicher ausschließen kann?
Um das festzustellen benötige ich keine equals Methode, sondern kann mit == überprüfen.
Bsp.:
Code:
private void remove(ArrayList<Integer> list, int[] values) {
for (int i = 0; i < values.length; i++) {
if (values[i] != 0) { // Performanter???
list.remove(values[i]);
}
}
}
Danke!