static <T> Map<T, Integer> assignIds(Collection<T> objects);
我希望编写一个函数,它接收一组唯一的对象,并为每个对象分配一个不同的ID号码。这些ID号码应按顺序分配。
我可以使用显式循环轻松完成此操作,例如:
Map<T, Integer> ids = new HashMap<>();
int id = 0;
for (T object: objects) {
ids.put(object, id++);
}
有没有一种优雅的方法可以使用新的Java 8 Stream API来完成这个任务?