#

Java Collections

Derzeit arbeite ich viel mit Java 1.5. Durch das Interface Iterable kann man hier die kurze Schleifenvariante

Collection c = ...
for (final Object o:c){
  ...
}

einsetzen, die genauso auch für Arrays funktioniert.
Was jedoch nicht geht, ist das Hinzufügen von Arrays in Collections via collection.addAll(anArray);.
Hier hilft meine kleine Utilityklasse Collections weiter, die auch die Collection zurück liefert.
Zwei Dinge, die man bei java.util.Collections leider nicht bedacht hat…

import java.util.Collection;
import java.util.Map;
 
public final class Collections {
  private Collections(){}
 
  @SuppressWarnings("unchecked")
  public static final Collection add(final Collection collection, final Object [] values){
    for (final Object value:values){
      collection.add(value);
    }
    return collection;
  }
 
  @SuppressWarnings("unchecked")
  public static final Map put(final Map map, final Object [] keys, final Object [] values){
    for (int i=0; i<keys.length; i++){
      map.put(keys[i], values[i]);
    }
    return map;
  }
 
  public static final Collection remove(final Collection collection, final Object [] values){
    for (final Object value:values){
      collection.remove(value);
    }
    return collection; 
  }
}

Leave a Reply »»

Note: All comments are manually approved to avoid spam. So if your comment doesn't appear immediately, that's ok. Have patience, it can take some days until I have the time to approve my comments.