code: public static <Key, Value> Value putIfAbsent(final ObjectMap<Key, Value> map, final Key key, final Value value) {
          if (!map.containsKey(key)) {
              map.put(key, value);
              return value;
          }
          return map.get(key);
      }
docs: Puts a value with the given key in the passed map, provided that the passed key isn't already present in the
  map.
  
  @param map may contain a value associated with the key.
  @param key map key.
  @param value map value to add.
  @return value associated with the key in the map (recently added or the previous one).
  @param <Key> type of map keys.
  @param <Value> type of map values.