84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
Wie im Titel steht, ist heute der 21.06.2017. Wie erhalte ich den Montag der letzten Woche, den 12.06.2017?
谢邀。
我记得java的Date处理好象有什么问题来着,具体我忘记了。一般都使用企业级的Time框架Joda-Time,举个例子:
//今天 DateTime today = DateTime.now(); //上周的今天 DateTime sameDayLastWeek = today.minusWeeks(1); //上周的周一 DateTime mondayLastWeek = sameDayLastWeek.withDayOfWeek(DateTimeConstants.MONDAY); //上周的周日 DateTime sundayLastWeek = sameDayLastWeek.withDayOfWeek(DateTimeConstants.SUNDAY);
说Java的Date处理有什么问题的嘛,那是以前的java.util.Date, 现在的新包java.time的API处理时间也是非常方便,API都是参考了很多优秀的Time框架,例如Joda-Time,所以,要用还是用自家的API噻,哈哈,毕竟是亲儿子
java.util.Date
java.time
Joda-Time
LocalDate newLocalDate = LocalDate.of(2017, 6, 21).minusWeeks(1l) .with(DayOfWeek.MONDAY);
哈哈,是不是很简洁...比Joda-Time这个私生子是不是更简洁点...简直爽~~~嘎嘎嘎
LocalDate.now().minusWeeks(1).minusDays(LocalDate.now().getDayOfWeek().getValue()-1)我现在是这样写的,不知道还有没有更好的写法
public static void getLastMonday(){ LocalDate local = LocalDate.now();//获取当前时间 DayOfWeek dayOfWeek = local.getDayOfWeek();//获取今天是周几 LocalDate lastMonday = local.minusDays(7+dayOfWeek.getValue()-1);//算出上周一 }
谢邀。
我记得java的Date处理好象有什么问题来着,具体我忘记了。一般都使用企业级的Time框架Joda-Time,举个例子:
说Java的Date处理有什么问题的嘛,那是以前的
java.util.Date
, 现在的新包java.time
的API处理时间也是非常方便,API都是参考了很多优秀的Time框架,例如Joda-Time
,所以,要用还是用自家的API噻,哈哈,毕竟是亲儿子哈哈,是不是很简洁...比
Joda-Time
这个私生子是不是更简洁点...简直爽~~~嘎嘎嘎LocalDate.now().minusWeeks(1).minusDays(LocalDate.now().getDayOfWeek().getValue()-1)
我现在是这样写的,不知道还有没有更好的写法