我无法延长ArrayDeque
。我的问题可以被提炼(mcve?)到下面的内容:
我的队列只接受键值对象。
import java.util.AbstractMap.SimpleEntry;
import java.util.ArrayDeque;
public class TicketsQueue<E> extends ArrayDeque<E> {
transient ArrayDeque<SimpleEntry<String, String>> tickets = new ArrayDeque<SimpleEntry<String, String>>();
public boolean offer(String category, String ticketId) {
return tickets.offer(new SimpleEntry<String, String>(category, ticketId));
}
}
我也有自定义poll()
方法,但我不认为这与我的问题相关。 <{1}}我打算使用的大多数其他内容。
然后我尝试使用我的ArrayDeque
:
TicketsQueue
这失败了。我做错了什么?
答案 0 :(得分:0)
我已将实施最小化如下。我希望这可以解决你的问题。
{{1}}
答案 1 :(得分:0)
在阅读了关于协会的内容之后,我发现了以下修复:
public class TicketsQueue<E> extends ArrayDeque<E> {
public boolean offer(String category, String ticketId) {
return offer((E) new SimpleEntry<String, String>(category, ticketId));
}
}
这使我的TicketsQueueTest
通过。