Comment obtenir l'heure du lundi et du dimanche de la semaine dernière en utilisant LocalDate en JAVA
扔个三星炸死你
扔个三星炸死你 2017-06-23 09:13:25
0
4
1052

Comme dans le titre, par exemple, nous sommes aujourd'hui le 21/06/2017. Comment puis-je obtenir le lundi de la semaine dernière, le 12/06/2017

.
扔个三星炸死你
扔个三星炸死你

répondre à tous(4)
为情所困

Merci pour l'invitation.

Je me souviens qu'il semblait y avoir un problème avec le traitement des dates en Java, mais j'ai oublié les détails. Généralement, le framework Time au niveau de l'entreprise Joda-Time est utilisé, par exemple :

//今天
DateTime today = DateTime.now();
//上周的今天
DateTime sameDayLastWeek = today.minusWeeks(1);
//上周的周一
DateTime mondayLastWeek = sameDayLastWeek.withDayOfWeek(DateTimeConstants.MONDAY);
//上周的周日
DateTime sundayLastWeek = sameDayLastWeek.withDayOfWeek(DateTimeConstants.SUNDAY);
阿神

Quant au problème avec le traitement des dates de Java, c'était du passéjava.util.Date, 现在的新包java.time的API处理时间也是非常方便,API都是参考了很多优秀的Time框架,例如Joda-Time, donc si vous voulez l'utiliser, vous devriez utiliser votre propre API, haha, après tout, c'est son fils biologique

LocalDate newLocalDate = LocalDate.of(2017, 6, 21).minusWeeks(1l)
                                                  .with(DayOfWeek.MONDAY);

Haha, n'est-ce pas très concis ? N'est-ce pas plus concis que Joda-Timecet enfant illégitime C'est trop cool~~~Gagaga

我想大声告诉你

LocalDate.now().minusWeeks(1).minusDays(LocalDate.now().getDayOfWeek().getValue()-1)
C'est comme ça que je l'écris maintenant, je ne sais pas s'il existe une meilleure façon

曾经蜡笔没有小新
    public static void getLastMonday(){
        LocalDate local = LocalDate.now();//获取当前时间
        DayOfWeek dayOfWeek = local.getDayOfWeek();//获取今天是周几
        LocalDate lastMonday = local.minusDays(7+dayOfWeek.getValue()-1);//算出上周一
    }
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal