12 Nov 2020

[java] RoundRobin 구현

RoundRobin 구현

public class RoundRobin<T>{
    private final List<T> list;
    private final Iterator<T> iterator;
    private int index;

    public RoundRobin(List<T> list){
        this.list=list;
        this.index=0;
        this.iterator=new Iterator<>(){
            @Override
            public boolean hasNext() {
                return true;
            }

            @Override
            public T next(){
                T value=list.get(index);
                index=(index+1)%list.size();

                return value;
            }
        }
    }

    public T next() {
        return iterator.next();
    }

    public void add(T item) {
        list.add(item);
    }
}

Tags:
0 comments