| Hjem | Hardware | Netværk | Programmering | software | Fejlfinding | systemer | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringssprog
  • Delphi programmering
  • Java programmering
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl programmering
  • Python Programming
  • Ruby Programming
  • Visual Basics Programmering
  •  
    Computer Viden >> Programmering >> Java programmering >> Content
    Sådan Beregn Date Forskel i Java
    Beregning forskellene mellem to datoer i Java 6.0 og tidligere kan være bedragerisk vanskelig på grund af behovet for at rumme et skudår, skudsekunder , sommertid tider og andre justeringer jævnligt foretaget i kalenderen i de fleste lande. Denne tutorial giver to løsninger , en, der ikke bør anvendes i situationer, hvor DST eller skudår kan forårsage alvorlige problemer og en mere sofistikeret option baseret på JSR -310 -bibliotek. Dette bibliotek er planlagt til at være en del af Java 7.0 API , når den er udgivet i slutningen af ​​2010. Dog kan det downloades til brug nu . Hvad du har brug
    Computer
    Java
    JSR -310 (ekstraudstyr)
    Vis Flere Instruktioner
    Brug Java 6,0 Værktøj
    1

    Opret et ny klasse med navnet " DateDifferencer ", og filnavnet " DateDifferencer.java ". Giv det følgende skelet : Hej

    /*** Denne klasse vil give to metoder til at finde forskellene mellem datoer: * - En indfødt metode, der ikke højde for skudår og andre dato mærkværdigheder * men der er kompatibel med den nyeste version af Java, som i begyndelsen af ​​2010 * - . . En mere sofistikeret version, der bruger eksterne JSR -310 bibliotek, * der vil indgå i Java 7 , på grund af at blive frigivet i slutningen af ​​2010 ** @ forfatter Kevin Walker * /public class DateDifferencer {

    }

    Alt andet vil gå inden for denne klasse skelet.
    2

    Beregn antallet af millisekunder i en dag og gemme det i en konstant til senere brug . Dette er nødvendigt, fordi Java 6,0 og tidligere versioner forstår tid indbygget i millisekunder eller nanosekunder .

    /*** Antallet af millisekunder på en dag er lig med 1000 millisekunder per sekund * 60 sekunder per minut * 60 minutter for hver time * 24 timer i døgnet * /

    offentlig endeligt statisk dobbelt MILLISECONDS_IN_DAY = 1000 * 60 * 60 * 24 ,
    3

    Opret " findDifference "-metoden. Sørg for, at javadoc kommentar bemærker svagheder i metoden til alle andre, der vælger at bruge det.

    /*** Denne klasse bruger en simpel metode til at beregne forskellen mellem to datoer . * Det er dog ikke fejlfri . Unøjagtigheder kan resultere grund af skudår . ** @ Return antallet af dage, forskellen mellem de to datoer , uden korrektion for skudår eller sommertid ændringer . * /Public static double findDifference (dato d1 , Date d2 ) {
    < p> double diff = Math.abs ( d2.getTime () - d1.getTime ());

    dobbelt dage = diff /MILLISECONDS_IN_DAY ,

    tilbagevenden dage

    }

    Dette virker ved at finde forskellen mellem de to datoer i form af millisekunder . Derefter deler , at antallet af millisekunder på en dag (som du beregnet i trin 2).
    Brug JSR -310
    4

    Placer JSR -310 Time " jar " fil i samme mappe som resten af ​​dit program.
    5.

    tilføje et par mere import til din DateDifferencer klasse, så du kan få adgang til JSR 310 biblioteket.
    < p > import javax.time.Duration , import javax.time.period.Period , .
    6

    Tilføj en ny metode til din DateDifferencer klasse

    /*** @ returnere en streng beskriver forskellen mellem de to datoer * /public static String findDifferenceWithJSR (Date start, Date ende) { varighed varighed = Duration.durationBetween (start , slut ) . Periode diff = Period.nanos ( duration.toNanos ()); tilbage ny diff.toString ( );}

    Dette skaber en " varighed " objekt , der holder forskellen mellem de to datoer. Du kunne stoppe der og returnere Varighed s " toString " kommando . Men dette giver svaret i form af sekunder , hvilket ikke er læsbar . Så det skaber derefter en " Period " objekt og bruger dets " toString " kommando .

    Forrige :

    næste :
      Relaterede artikler
    ·Sådan Ignorer tegnsætning i Java 
    ·Java Applets Tutorial 
    ·WPS og JVM Heap Størrelser 
    ·Funktionen af ​​toString i Java 
    ·Sådan Konverter et nummer til et brev i Java 
    ·Sådan Tilslut en JButton til en JTextField 
    ·Sådan tilføjes et panel til at JFrame 
    ·Java Communications API Tutorial 
    ·Hvordan man laver en labyrint i Java 
    ·Forskellene mellem JSP & JSPF 
      Anbefalede Artikler
    ·Sådan Strip Skråstreger Med PHP 
    ·Sådan fjerner Null Records fra en vifte i Java 
    ·Sådan krypteres en fil i PHP 
    ·Hvordan skal tjekkes for et drev ved hjælp VB 
    ·Sådan installeres Snort Med MySQL i CentOS 
    ·Sådan oprettes en Secure PHP Login Script 
    ·Sådan opdaterer Session Variabler 
    ·Den rolle og funktion Metadata 
    ·Sådan ændres en Java Random Rutinemæssig 
    ·Java Tutorial for Split Strings 
    Copyright © Computer Viden http://www.computerdk.com