Swing Java Tutorial

import java.util.List;
import javax.swing.JSpinner;
import javax.swing.SpinnerListModel;
public class Main {
  public static void main(String[] argv) throws Exception {
    SpinnerCircularListModel listModel = new SpinnerCircularListModel(
        new String[] { "red", "green", "blue" });
    JSpinner spinner = new JSpinner(listModel);
  }
}
class SpinnerCircularListModel extends SpinnerListModel {
  public SpinnerCircularListModel(Object[] items) {
    super(items);
  }
  public Object getNextValue() {
    List list = getList();
    int index = list.indexOf(getValue());
    index = (index >= list.size() - 1) ? 0 : index + 1;
    return list.get(index);
  }
  public Object getPreviousValue() {
    List list = getList();
    int index = list.indexOf(getValue());
    index = (index <= 0) ? list.size() - 1 : index - 1;
    return list.get(index);
  }
}