У меня есть следующий код в Objective-C для iPhone, используя NSDateFormatter:
NSDate *today = [NSDate date];
NSDateFormatter *dateFormat = [[[NSDateFormatter alloc] init]autorelease];
[dateFormat setDateFormat:@"yyyy-MM-dd"];
NSString *dateString = [dateFormat stringFromDate:today];
if ([dateString isEqual:@"2010-11-12"]) {
Что будет эквивалентно NSDateFormatter, используемому там в Java на Android? Я до сих пор довольно новичок в разработке Java и Android.
Чистый эквивалент Java-кода:
Date today = new Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
String dateString = dateFormat.format(today);
if (dateString.equals("2010-11-12")) {
}
Но почему вы форматируете дату и сравниваете ее со строкой, а не проверяете сам объект даты?
final Date now = new Date();
final Format formatter = new SimpleDateFormat("yyyy-MM-dd");
if (formatter.format(now).equals("2010-11-12")) {
// Do something
}
Обратите внимание, что конструктор по умолчанию java.util.Date инициализирует его до текущего времени