【发布时间】:2023-04-07 16:32:02
【问题描述】:
我是在这里发布问题的新手,但从昨天开始一直在寻找解决方案,但找不到。非常感谢您的帮助。
我有两行,我试图将通用元素放入列表中并获得类型不匹配以将 Long 元素发送到列表。
List<Long> returnedPages = m_algo.getElement(Arrays.asList(pageIds));
List<Long> pagesNotInRam = new ArrayList<>();
List<Long> pageIdsToHandle = m_algo.putElement(pagesNotInRam, pagesNotInRam);
m_algo 已定义
private IAlgoCache<Long, Long> m_algo;
并且 IAlgoCache 与泛型类型一起使用
public interface IAlgoCache <K, V> {
public V getElement(K key);
public V putElement(K key, V value);}
我可以完成这项工作吗?我应该在某种循环中工作吗?
【问题讨论】:
-
那么到底是什么问题?
-
确切的错误是什么?
-
如果您的
m_algo定义为IAlgoCache<Long, Long>,那么K和V应该代表Long值,而不是Long 值列表。也许您想将它们定义为IAlgoCache<List<Long>, List<Long>>,但有消息告诉我这可能是X/Y problem -
我想过改变我的替换算法,但经过两个多小时的工作,我意识到这也需要几天的时间。当时我在这里注册,想也许有某种解决方案对于这个我没有想到的问题。
标签: java list generics arraylist