Najlepszy sposób porównywania dat w systemie Android

Próbuję porównać datę w formacie String z bieżącą datą. Tak to zrobiłem (nie testowałem, ale powinien działać), ale używam metod nieaktualnych. Jakieś dobre propozycje alternatywy? Dzięki.

P.S. Naprawdę nienawidzę robić rzeczy w Javie. Jest tak wiele sposobów na zrobienie tego samego, że naprawdę nie jesteś pewien, który z nich jest poprawny, stąd moje pytanie tutaj.

String valid_until = "1/1/1990";

Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("dd/mm/yyyy");
Date strDate = sdf.parse(valid_until);

int year = strDate.getYear(); // this is deprecated
int month = strDate.getMonth() // this is deprecated
int day = strDate.getDay(); // this is deprecated       

Calendar validDate = Calendar.getInstance();
validDate.set(year, month, day);

Calendar currentDate = Calendar.getInstance();

if (currentDate.after(validDate)) {
    catalog_outdated = 1;
}

questionAnswers(13)

yourAnswerToTheQuestion