gpt4 book ai didi

java - 如何循环遍历 List> 迭代器

转载 作者:太空宇宙 更新时间:2023-11-04 09:29:37 28 4
gpt4 key购买 nike

我有一个方法可以循环遍历包含 <Key, <List<Pair>> 的 map 。 。我如何循环遍历并获得所有结果?由于此列表包含多种货币。我不希望将不同类型的货币金额加在一起。我的尝试如下,它似乎没有得到所有结果

最佳答案

假设您有一个包含所有数据的 map ,您可以执行以下操作:

Iterator<Entry<Date, List<Pair<BigDecimal, Currency>>>> itr = source.entrySet().iterator();

现在您已经有了这个迭代器,您可以将其转换为元素迭代器:

Iterator<Element> eItr = new Iterator<Element> {
int index = 0;
Iterator<Entry<Date, List<Pair<BigDecimal, Currency>>>> itr = source.entrySet().iterator();
Entry<Date, List<Pair<BigDecimal, Currency>>> current = itr.hasNext()? itr.next() : null;

@Override
public boolean hasNext() {
return current != null;
}

@Override
public Element next() {
try {
return new Element(current.getKey(), current.getValue().get(index).getFirst(), current.getValue().get(index).getSeccond());
} finally {
index++;
if (index >= current.getValue().size()) {
index = 0;
current = itr.hasNext()? itr.next() : null;
}
}
}
}

关于java - 如何循环遍历 List<Pair>> 迭代器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57250614/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com