gpt4 book ai didi

java - 如何生成由函数支持的列表?

转载 作者:行者123 更新时间:2023-12-01 22:42:29 24 4
gpt4 key购买 nike

我有一个函数myFunctionFunction<Integer, T> ,我想构造一个对象 mylist尺寸size ,实现List<T> (或者可能是某种不可变列表接口(interface)),由函数支持,从某种意义上说 mylist.get(i) == myFunction.apply(i) .

我可以手动执行此操作,但是是否有一些(Guava)代码可以执行相同的操作?

最佳答案

只需使用java.util.AbstractList:

 new AbstractList<T>() {
public T get(int i) {
Preconditions.checkElementIndex(i, size);
return function.apply(i);
}
public int size() {
return size;
}
}

结果不一定是不可变的,因为函数输出可能会有所不同。您很可能完全摆脱 Function ,而只需在 AbstractList 实现中编写 Function 的实现即可。

关于java - 如何生成由函数支持的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15099313/

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