Type-safe flattening of nested collections/structures in Java
问题 I would like to flatten arbitrary deeply nested collections/structures of elements of some type T in Java, optimally with only having a live view and not a copied collection; not only handling Collections, but also Iterator, arrays of T of arbitrary dimension, Iterable, and all these structures arbitrarily mixed and nested; statical type-safety. Is there a java library which can handle this? Guava seems to only handle one nesting level, i.e. Collection<Collection<T>> --flatten--> Collection<T