Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class HashQueueSet<T> extends LinkedHashSet<T> implements Queue<T> {
- @Override
- public boolean offer(T t) {
- return add(t);
- }
- @Override
- public T remove() {
- if(isEmpty()) throw new NoSuchElementException();
- return remove0();
- }
- @Override
- public T poll() {
- if(isEmpty()) return null;
- return remove0();
- }
- private T remove0() {
- Iterator<T> iterator = iterator();
- T t = iterator.next();
- iterator.remove();
- return t;
- }
- @Override
- public T element() {
- if(isEmpty()) throw new NoSuchElementException();
- return iterator().next();
- }
- @Override
- public T peek() {
- if(isEmpty()) return null;
- return iterator().next();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement