Я хотел бы сгладить произвольные глубоко вложенные коллекции/структуры элементов некоторого типа T в Java, оптимально с помощью
- имеет только просмотр в реальном времени, а не скопированную коллекцию;
- не только обрабатывает коллекции, но и итераторы, массивы T произвольной размерности, итерации и все эти структуры произвольно смешанные и вложенные;
- статический тип безопасности.
Есть ли библиотека java, которая может справиться с этим?
Guava, похоже, обрабатывает только один уровень вложенности, т.е. Collection<Collection<T>>
--flatten → Collection<T>
.
lambdaj выглядит многообещающим: могу ли я каким-то образом объединить on()
, asIterator()
и flattenIterator()
, чтобы достичь этого? Статически безопасным способом?