}
if (obj instanceof Map) {
return ((Map<?, ?>) obj).values().iterator();
}
if (obj instanceof NodeList) {
return new NodeListIterator((NodeList) obj);
}
if (obj instanceof Node) {
return new NodeListIterator((Node) obj);
}
if (obj instanceof Dictionary) {
return new EnumerationIterator<Object>(((Dictionary<?, ?>) obj).elements());
} else if (obj.getClass().isArray()) {
return new ArrayIterator<Object>(obj);