我的考试中有人要求在Java中编写队列算法。我使用Iterator
来提取队列的元素。 (元素由字符组成:'R'
或'W'
或'B'
仅限)。该问题禁止创建或销毁输入队列的任何字符。我只是想问一下是否使用Iterator
提取元素“创建”字符?
我的算法是:
Q=Queue
Iterator dummy=Q.elements();
while (//some condition){
if (dummy.data=='R')
...
...
这只是算法。我想问一下我是否“创造”了元素,因为我被授予了0
分。 :(
答案 0 :(得分:1)
elements()
之类的队列上没有方法element()
Retrieves but does not remove element from the queue
正确的方法是queue.iterator()
;
任何方式逻辑上你都是正确的,你不配得0
您也可以使用new for loop
for(Object object : queue) {
//do something
}
答案 1 :(得分:0)
char
是一种值类型,因此所有分配都会产生“副本”。