Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Programmering >> Java Programming >> Content
Hoe te Datum Verschil in Java Bereken
Het berekenen van de verschillen tussen de twee data in Java 6.0 en eerder kan vanwege de noodzaak om schrikkeljaren tegemoet te komen, sprong seconden , zomertijd tijden en andere aanpassingen regelmatig naar de kalender die in de meeste bedrieglijk moeilijk zijn landen . Deze tutorial geeft twee oplossingen , een die niet mag worden gebruikt voor situaties waar DST of schrikkeljaren ernstige problemen en een meer geavanceerde optie op basis van de JSR - 310 library kan veroorzaken . Deze bibliotheek is gepland om een deel van de Java 7.0 API zijn wanneer het wordt uitgebracht in eind 2010 . Het kan echter worden gedownload voor gebruik nu . Wat je nodig hebt
Computer
Java
JSR - 310 ( optioneel )
Toon Meer Aanwijzingen
gebruik van Java 6.0 Gereedschap
1

Creëer een nieuwe klasse met de naam " DateDifferencer " en de bestandsnaam " DateDifferencer.java . " Geef het de volgende skelet :

/*** Deze klasse
zullen twee methoden voor het vinden van verschillen tussen de datum door te geven : * - Een native methode die niet goed zijn voor schrikkeljaren en andere datum eigenaardigheden * maar dat compatibel met de nieuwste versie van Java , met ingang van begin 2010 * - . . Een meer geavanceerde versie die gebruik maakt van de externe JSR - 310 bibliotheek , * die zal worden opgenomen in Java 7 , zal worden uitgebracht in eind 2010 ** @ author Kevin Walker * /public class DateDifferencer {


}

Al het andere
zal gaan binnen deze klasse skelet . kopen van 2

Bereken het aantal milliseconden in een dag en opslaan in een constante voor later gebruik . Dit is nodig omdat Java 6.0 en eerdere versies begrijpen tijd native in milliseconden of nanoseconden .

/*** Het aantal milliseconden in een dag is gelijk aan 1000 milliseconden per seconde * 60 seconden per minuut * 60 minuten per uur * 24 uur per dag * /

public final static double MILLISECONDS_IN_DAY
= 1000 * 60 * 60 * 24 ;
3

Maak de " findDifference " -methode . Zorg ervoor dat de reactie Javadoc merkt de zwakte in de methode voor iedereen die ervoor kiest om het te gebruiken .

/*** Deze klasse
maakt gebruik van een eenvoudige methode om het verschil tussen twee datums berekenen . * Het is echter niet onberispelijk . Onjuistheden kunnen leiden vanwege schrikkeljaren . ** @ Return het aantal dagen verschil tussen de twee data zonder correctie voor schrikkeljaren of zomertijd verandert . * /Public static double findDifference ( Datum d1 , Datum d2 ) {

dubbele diff = Math.abs ( d2.getTime ( ) - d1.getTime ( ) ) ;

dubbel dagen | = diff /MILLISECONDS_IN_DAY ;

terugkomdagen
;

}

Dit werkt door het vinden van het verschil tussen de twee data in milliseconden . Het verdeelt vervolgens dat door het aantal milliseconden in een dag (die je berekend in stap 2 ) .
Behulp JSR - 310

Plaats 4 de JSR - 310 Time " jar " -bestand in dezelfde map als de rest van uw programma .
5

Voeg een paar meer invoer aan uw DateDifferencer klas , zodat u toegang tot de JSR 310 bibliotheek kan hebben .

import javax.time.Duration , import javax.time.period.Period ; .
6

Voeg een nieuwe methode om uw DateDifferencer klas

/*** @ return een string
beschrijven van het verschil tussen de twee data * /public static String findDifferenceWithJSR ( Datum start , Datum einde ) { duur duration = Duration.durationBetween ( begin , einde ) ; . Periode diff = Period.nanos ( duration.toNanos ( ) ) ; terugkeer nieuwe diff.toString ( ) ; }

Dit creëert een " Duration " object, dat het verschil tussen de twee datums houdt . Je zou daar te stoppen en terug te keren " toString " commando van de Duur 's . Echter, dit geeft het antwoord in termen seconden , wat niet leesbaar . Dus, het maakt dan een "Periode" object en gebruikt zijn " toString " commando .

Previous: Next:
  Java Programming
·Hoe maak je een cirkeldiagram …
·Hoe kan ik een applet converte…
·ArrayList Methoden in Java 
·Java Concepts : Linked List La…
·Hoe je Java 3D Install 
·Hoe te Integers Bewaren in een…
·Verf Methode in een Java-apple…
·Hoe maak je een Java String om…
·Hoe kan ik een gebruiken als v…
  Related Articles
Hoe maak je een Combo Box Maak in Visual…
Hoe maak je een Check Box Maak in Visual…
Hoe maak je een tekstvak maken in Visual…
Hoe maak je een optie Box in Visual Basi…
Hoe maak je een schijf keuzelijst in Vis…
Hoe kan ik een keuzelijst maken in Visua…
Hoe kan ik een Picture Box Maak in Visua…
Hoe een bestand keuzelijst Maak in Visua…
Hoe kan ik een afbeelding Box Maak in Vi…
  Programmering Articles
·Hoe Computer Animation maken 
·Human Computer Interface Design Guidelin…
·Hoe dynamisch Verander de Grootte van Hy…
·Hoe te verwijderen Crestline Windows 
·Hoe kan ik op Alles vervangen Backslashe…
·Hoe maak je Flush een Slow Query Log in …
·Wat is Java SDK ? 
·Hoe te Lengte van Int in Java Bereken 
·Waarom heb ik Java-software nodig? 
Copyright © Computer Kennis http://www.nldit.com