Calendar y manejo de fechas

Alguien que sepa como encontrar el último día del mes anterior. He intentado con Calendar, resto el mes y después uso getActualMaximum pero me da el primer dia.

Gracias adelantadas.

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de ezamudio

GregorianCalendar

según recuerdo era algo asi:

GregorianCalendar hoy = new GregorianCalendar();
hoy.set(Calendar.DATE, 1); //Le ponemos el primer dia de este mes
hoy.add(Calendar.DATE, -1); //Le restamos un día
Date ultimoMesPasado = hoy.getTime(); //o getDate, no recuerdo
Imagen de footballer

Perfecto

Gracias ezamudio, funciona perfecto.

Imagen de ivlecamo

Consulta sobre calendar

Hola amigos miren tengo una duda, quiero inicializar el calendar con este codigo

int anio_SMS=2012;
int mes_SMS=6;
int dia_SMS=12;

Calendar FechaFinal = new GregorianCalendar(anio_SMS, mes_SMS, dia_SMS);
//SUMO UN DÍA A LA FECHA
FechaFinal.add(Calendar.DATE,1);
System.out.println("Fecha más uno "+FechaFinal.getTime());

El Resultado:
Fecha más uno 2012-07-13 // Le suma un mes más, porque??

Lo que hice fue restarle desde el inicio un mes

Calendar FechaFinal = new GregorianCalendar(anio_SMS, mes_SMS-1, dia_SMS);

El Resultado
Fecha más uno 2012-06-13 // Aparentemente está bien pero cuando sumo 25 días por ejemplo me da esto:

Fecha más uno 2012-06-08 // No sé porque hace esto!!!

Entonces no sé porque me da estos resultados porque según leí, el código donde inicializo el calendar está bien!!! pero no me da los resultados que quiero!!!

Espero su valiosa ayuda!!!

Imagen de ezamudio

javadoc

Lee el javadoc de Calendar y GregorianCalendar. Revisa las constantes que vienen ahí. Los meses comienzan en Enero=0.