101102103104105106107108109110111
if (clazz.isArray()) { return ArraysEncoder.newInstance(clazz); } // 集合类型 if (Collection.class.isAssignableFrom(clazz)) { return new CollectionEncoder(clazz); } // Map类型 if (Map.class.isAssignableFrom(clazz)) { return new MapEncoder(clazz); }