Questo è un modo semplice e corretto per farlo:
codice:
import java.text.*;
import java.util.*;
public class Prova {
public static void main(String[] args) {
GregorianCalendar c1 = new GregorianCalendar(2014, Calendar.APRIL, 11);
GregorianCalendar c2 = new GregorianCalendar(2014, Calendar.DECEMBER, 11);
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd");
while (c1.compareTo(c2) <= 0) {
System.out.println(sdf1.format(c1.getTime()));
c1.add(Calendar.MONTH, 1);
}
}
}
Output:
2014-04-11
2014-05-11
2014-06-11
2014-07-11
2014-08-11
2014-09-11
2014-10-11
2014-11-11
2014-12-11