code: public static Object getFirstValue(final Object iObject) {
      if (iObject == null)
        return null;
  
      if (!isMultiValue(iObject))
        return null;
  
      try {
        if (iObject instanceof Collection<?>)
          return ((Collection<Object>) iObject).iterator().next();
        else if (iObject instanceof Map<?, ?>)
          return ((Map<?, Object>) iObject).values().iterator().next();
        else if (iObject.getClass().isArray())
          return Array.get(iObject, 0);
      } catch (Exception e) {
        // IGNORE IT
        OLogManager.instance().debug(iObject, "Error on reading the first item of the Multi-value field '%s'", iObject);
      }
  
      return null;
    }
docs: Returns the first item of the Multi-value object (array, collection or map)
  
  @param iObject
  Multi-value object (array, collection or map)
  @return The first item if any