public static <K, V> void forEach(Map<K, V> map, Procedure2<? super K, ? super V> procedure) {
		if (procedure == null)
			throw new NullPointerException("procedure");
		for (Map.Entry<K, V> entry : map.entrySet()) {
			procedure.apply(entry.getKey(), entry.getValue());
		}
	}
public static < K , V > void forEach ( Map < K , V > map , Procedure2 < ? super K , ? super V > procedure ) { if ( procedure == null ) throw new NullPointerException ( "procedure" ) ; for ( Map . Entry < K , V > entry : map . entrySet ( ) ) { procedure . apply ( entry . getKey ( ) , entry . getValue ( ) ) ; } }
Applies the given {@code procedure} for each {@link java.util.Map.Entry key value pair} of the given {@code map}.

@param map
the map. May not be <code>null</code>.
@param procedure
the procedure. May not be <code>null</code>.