Cómo construir una fecha de una cadena

Tengo que comparar dos fechas en if / else, la fecha actual y la fecha predefinida (digamos 1 de enero de 2011). Esto se suponía que era simple, pero no puedo encontrar la manera de establecer la fecha predefinida algo así como:

Java.util.Date date = new Date("2011-01-01"); 

¿Cómo comparar dos fechas? Realmente no sé por qué es tan complicado de hacer.

Tratar:

 import java.text.SimpleDateFormat; import java.util.Date; ... Date today = new Date(); Date predefined = new SimpleDateFormat("yyyy-MM-dd").parse("2011-01-01"); if(today.equals(predefined)) { ... } 

Utilice java.util.Calendar .

 Calendar cal = Calendar.getInstance(); cal.clear(); cal.set(Calendar.YEAR, 2011); cal.set(Calendar.MONTH, 1); cal.set(Calendar.DATE, 1); Date predefined = cal.getTime(); Date now = new Date(); if (now.after(predefined)) { // do something } else { // do something else } 

O usar JodaTime .

¿Cómo comparar dos fechas? Realmente no sé por qué es tan complicado de hacer.

Debido a que los calendarios / fechas / horas son realmente difíciles de conseguir bien, y la implementación de Java de la Date (y, en parte, el Calendar ) es un accidente de tren completo.

  • Cuenta-autenticador perdido en mover la aplicación a sdcard
  • Enviar SMS hasta que tenga éxito
  • Android TV: la imagen desenfocada contiene fondo transparente negro?
  • Manipulación de bytecode de Android y java
  • ¿Necesito llamar a "super.XXX" siempre que anule un método?
  • Pasando enActividadResultado en Córdoba
  • Call class 'constructor por reflexión con Kotlin
  • ¿Cómo crear carpetas en Google Drive sin duplicar?
  • EPIPE (Broken pipe) durante la carga?
  • Calendario de Android Java getDisplayName / s devolver null
  • Cómo utilizar la clase Apache HttpDelete de Android con el parámetro
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.