code: public static Iterator<Object> getMultiValueIterator(final Object iObject) {
      if (iObject == null)
        return null;
  
      if (!isMultiValue(iObject))
        return null;
  
      if (iObject instanceof Collection<?>)
        return ((Collection<Object>) iObject).iterator();
      if (iObject instanceof Map<?, ?>)
        return ((Map<?, Object>) iObject).values().iterator();
      if (iObject.getClass().isArray())
        return new OIterableObjectArray<Object>(iObject).iterator();
      return null;
    }
docs: Returns an Iterator<Object> object to browse the multi-value instance (array, collection or map)
  
  @param iObject
  Multi-value object (array, collection or map)