gpt4 book ai didi

java - 在 Java 中转换迭代器类型

转载 作者:搜寻专家 更新时间:2023-10-31 08:05:42 25 4
gpt4 key购买 nike

我有一个 Iterator<TypeA>我想转换成 Iterator<TypeB> . TypeA 和 TypeB 不能直接相互转换,但我可以写一个规则如何转换它们。我怎样才能做到这一点?我应该扩展和覆盖 Iterator<TypeA> 吗?的 next、hasNext 和 remove 方法?

最佳答案

你不需要自己写这个。 Iterators.transform(...) Guava(以前称为 Google Collection )

您提供迭代器和一个将 TypeA 转换为 TypeB 的函数,您就完成了。

Iterator<TypeA> iterA = ....;
Iterator<TypeB> iterB = Iterators.transform(iterA, new Function<TypeA, TypeB>() {
@Override
public TypeB apply(TypeA input) {
TypeB output = ...;// rules to create TypeB from TypeA
return output;
}
});

关于java - 在 Java 中转换迭代器类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3888639/

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