Visualizzazione dei risultati da 1 a 10 su 24

Hybrid View

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    ciao.
    Credo che il problema sia la rimodulazione. Andando a sbirciare il codice

    codice:
    
     @Override
        public Period until(ChronoLocalDate endDateExclusive) {
            LocalDate end = LocalDate.from(endDateExclusive);
            long totalMonths = end.getProlepticMonth() - this.getProlepticMonth();  // safe
            int days = end.day - this.day;
            if (totalMonths > 0 && days < 0) {
                totalMonths--;
                LocalDate calcDate = this.plusMonths(totalMonths);
                days = (int) (end.toEpochDay() - calcDate.toEpochDay());  // safe
            } else if (totalMonths < 0 && days > 0) {
                totalMonths++;
                days -= end.lengthOfMonth();
            }
            long years = totalMonths / 12;  // safe
            int months = (int) (totalMonths % 12);  // safe
            return Period.of(Math.toIntExact(years), months, days);
        }
    questo è il metodo che fa il calcolo.
    Credo che a cannare sia questo punto qui, quello che normalizza

    codice:
     days = (int) (end.toEpochDay() - calcDate.toEpochDay());  // safe
    in particolare il metodo toEpochDay.

    Fatto prova con
    codice:
    printDiff(LocalDate.of(2013, 01, 1), LocalDate.of(2014, 2, 1));
            printDiff(LocalDate.of(2012, 12, 31), LocalDate.of(2014, 2, 1));
    e ho visto

    [2013-01-01 , 2014-02-01) = 1 year(s), 1 month(s), 0 day(s)
    [2012-12-31 , 2014-02-01) = 1 year(s), 1 month(s), 1 day(s)

    dovrei fare prove più serie per dirti altro

    ps se vuoi dare un occhio
    http://grepcode.com/file/repository....noLocalDate%29


    @leleFt
    concordo, preferivo di gran lunga la vecchia interfaccia!!
    Ultima modifica di valia; 03-09-2014 a 10:34
    RTFM Read That F*** Manual!!!

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.