String specificDate=2013+"-"+06+"-"+20;
String day="Monday";
それ以降の月曜日が来る次の日付を見つける方法はspecificDate
?
String specificDate=2013+"-"+06+"-"+20;
String day="Monday";
それ以降の月曜日が来る次の日付を見つける方法はspecificDate
?
Java 8の場合、次のようなものを使用できます...
LocalDate date = LocalDate.of(2013, Month.JUNE, 20);
LocalDate nextWed2 = date.with(TemporalAdjusters.nextOrSame(DayOfWeek.MONDAY));
また...
LocalDate date = LocalDate.of(2013, Month.JUNE, 20);
LocalDate nextWed2 = date.with(TemporalAdjusters.next(DayOfWeek.MONDAY));
選択した日付が でしMONDAY
たが、次の日付が必要な場合MONDAY
ここでより詳細に示されているように
または、JodaTime を使用したい場合は...
LocalDate date = new LocalDate(2013, DateTimeConstants.JUNE, 20);
LocalDate nextMonday = new LocalDate(date);
if (date.getDayOfWeek() >= DateTimeConstants.FRIDAY) {
nextMonday = date.plusWeeks(1);
}
nextMonday = nextMonday.withDayOfWeek(DateTimeConstants.FRIDAY);
この答えに基づいているのはどれですか
これを試して
Calendar c = new GregorianCalendar(2013, 5, 20);
int diff = Calendar.MONDAY - c.get(Calendar.DAY_OF_WEEK);
if (diff < 0) {
diff = 7 + diff;
}
c.add(Calendar.DATE, diff);
Date monday = c.getTime();