Maison  >  Questions et réponses  >  le corps du texte

Comment obtenir l'heure du lundi et du dimanche de la semaine dernière en utilisant LocalDate en JAVA

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

.
扔个三星炸死你扔个三星炸死你2675 Il y a quelques jours1006

répondre à tous(4)je répondrai

  • 为情所困

    为情所困2017-06-23 09:15:25

    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);

    répondre
    0
  • 阿神

    阿神2017-06-23 09:15:25

    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

    répondre
    0
  • 我想大声告诉你

    我想大声告诉你2017-06-23 09:15:25

    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

    répondre
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-06-23 09:15:25

        public static void getLastMonday(){
            LocalDate local = LocalDate.now();//获取当前时间
            DayOfWeek dayOfWeek = local.getDayOfWeek();//获取今天是周几
            LocalDate lastMonday = local.minusDays(7+dayOfWeek.getValue()-1);//算出上周一
        }

    répondre
    0
  • Annulerrépondre