emkiset.ru

Hoe twee datums in Java te vergelijken

Er zijn verschillende manieren om twee datums op Java te vergelijken. Een datum wordt intern weergegeven als een tijdstip in type lang

: het aantal milliseconden dat is verstreken sinds 1 januari 1970. In Java, Date (in het Spaans, "datum") is een object, wat betekent dat het verschillende methoden bevat om vergelijkingen te maken. Elke methode om twee datums te vergelijken, vergelijkt in wezen de tijd van die datums.

stappen

Methode 1
gebruik compareTo

Titel afbeelding 4301351 1
1
toepassingen compareTo. De klas datum gereedschap vergelijkbaar, daarom kunt u twee datums rechtstreeks vergelijken met de methode compare to. Als de datums hetzelfde punt in de tijd vertegenwoordigen, retourneert de methode een nul. Als de datum die u gaat vergelijken zich vóór het argument bevindt datum, de methode retourneert een waarde kleiner dan nul. Als de datum die u gaat vergelijken zich na het argument bevindt datum, de methode retourneert een waarde groter dan nul. Als de datums hetzelfde zijn, retourneert de methode een nul.
  • Titel afbeelding 4301351 2
    2
    Type-objecten maken datum. U moet elk object maken datum voordat u begint met het vergelijken van de datums. Een manier om dit te doen, is door de klas te gebruiken SimpleDateFormat. Hiermee kunt u gemakkelijk datumwaarden invoeren in type-objecten datum.
    SimpleDateFormat sdf = nieuw SimpleDateFormat ("yyyy-MM-dd") - // Om waarden in nieuwe datumobjecten te declareren, gebruikt u dezelfde datumindeling die u hebt gebruikt bij het maken van datums Datum datum1 = sdf.parse ("1995/02/23") - // datum1 is 23 februari 1995 Datum datum2 = sdf.parse ("2001/10/31") - // date2 is 31 oktober 2001Datum datum3 = sdf.parse ("1995/02/23") - // datum3 is op 23 februari 1995
  • Titel afbeelding 4301351 3
    3
    Vergelijk objecten datum. De onderstaande code toont elk geval (kleiner dan, gelijk aan en groter dan).
    date1.compareTo (datum2) - // datum1 < date2, retourneert een waarde minder dan 0date2.compareTo (datum1) - // datum2 > date1, retourneert een waarde groter dan 0date1.compareTo (datum3) - // datum1 = datum3, een 0 wordt weergegeven in de console
  • Methode 2
    gebruik is gelijk aan, na en voor

    Titel afbeelding 4301351 4
    1
    toepassingen is gelijk aan, na en voor. Datums kunnen worden vergeleken met de methoden is gelijk aan (Equal), na (na) en voor (Voor). Als twee datums hetzelfde punt in de tijd vertegenwoordigen, de methode is gelijk aan zal terugkeren waar (True). In deze voorbeelden worden de datums gebruikt die eerder voor de methode zijn gemaakt compareTo.
  • Titel afbeelding 4301351 5
    2
    Vergelijk het met behulp van de methode voor. De volgende code toont een echte en een valse. als datum1 is eerder date2, voor zal terugkeren waar. Anders keert het terug vals.
    System.out.print (date1.before (date2)) - // geeft true (waar) System.out.print (date2.before (date2)) - // onwaar (false)
  • Titel afbeelding 4301351 6
    3
    Vergelijk het met behulp van de methode na. De volgende code toont een echte en een valse. als date2 is na datum1, na zal terugkeren waar. Anders keert het terug vals.


    System.out.print (date2.after (datum1)) - // geeft true (waar) System.out.print (date1.after (date2)) - // false retourneert (false)
  • Titel afbeelding 4301351 7
    4
    Vergelijk het met behulp van de methode is gelijk aan. De volgende code toont een echte en een valse. Als de datums hetzelfde zijn, is gelijk aan zal terugkeren waar. Als ze dat niet zijn, zal het terugkeren vals.
    System.out.print (date1.equals (DATE3)) - // geeft true (waar) System.out.print (date1.equals (date2)) - // false retourneert (false)
  • Methode 3
    Gebruik de klas kalender

    Titel afbeelding 4301351 8
    1
    Gebruik de klas kalender. De klas kalender hij heeft ook de methoden compareTo, is gelijk aan, na en voor die op dezelfde manier werken als hierboven beschreven voor de klas datum. Vervolgens, als de informatie in een object is opgeslagen kalender, het is niet nodig om de datum uit te pakken alleen om een ​​vergelijking te maken.
  • Titel afbeelding 4301351 9
    2



    Maak exemplaren van kalender. Om de methoden van te gebruiken kalender, u moet enkele instanties van deze klasse maken. Gelukkig kun je eenvoudig de datums nemen van instanties van datum wat je eerder hebt gemaakt
    Kalender CAL1 = Calendar.getInstance () - // verklaren cal1Calendar CAL2 = Calendar.getInstance () - // verklaren cal2Calendar CAL3 = Calendar.getInstance () - // verklaren cal3cal1.setTime (datum1) - // Geldt tot op heden cal1cal2. setTime (date2) -cal3.setTime (date3) -
  • Titel afbeelding 4301351 10
    3
    vergelijken CAL1 en CAL2 gebruik voor. De volgende code zou moeten verschijnen waar als CAL1 is eerder CAL2.
    System.out.print (cal1.before (cal2)) - // zal true tonen (true)
  • Titel afbeelding 4301351 11
    4
    vergelijken CAL1 en CAL2 gebruik na. De volgende code zou moeten verschijnen vals als CAL1 is eerder CAL2.
    System.out.print (cal1.after (cal2)) - // zal false (false) weergeven
  • Titel afbeelding 4301351 12
    5
    vergelijken CAL1 en CAL2 gebruik is gelijk aan. De volgende code toont een echt voorbeeld en een fout exemplaar. De voorwaarde is afhankelijk van de instanties van de kalender die wordt vergeleken. De code zou moeten verschijnen waar en dan vals in de volgende regel.
    System.out.println (cal1.equals (CAL3)) - // tonen waar (true) == CAL1 cal3System.out.print (cal1.equals (CAL2)) - // tonen onwaar (false): CAL1 =! CAL2
  • Methode 4
    gebruik getTime

    Titel afbeelding 4301351 13
    1
    toepassingen getTime. U kunt ook data vergelijken direct vanaf het moment vertegenwoordigd door deze data, kan het echter beter zijn om de bovenstaande methoden te gebruiken, omdat ze meer leesbaar en dus handiger. Deze vergelijking wordt gemaakt met twee soorten primitieve gegevens, dus u kunt het doen met <, > en ==.
  • Titel afbeelding 4301351 14
    2
    Type-tijdobjecten maken lang. Voordat u de datums kunt vergelijken, moet u hele objecten van het type maken lang met de gegevens van de objecten datum wat je had gemaakt Gelukkig is de methode getTime Hij zal het werk voor je doen.
    lange getTime time1 = (datum1) - // verklaart primitieve variërend van date1long time1 time2 = getTime (date2) - // verklaart primitieve variërend van time2 date2
  • Titel afbeelding 4301351 15
    3
    Maak een vergelijking van het type "minder dan". Gebruik het symbool "minder dan" (<) om deze twee geheel-getalwaarden te vergelijken. als time1 is minder dan time2, Het eerste bericht moet worden weergegeven. De zin anders het is opgenomen met het doel een toepasselijke syntaxis toe te passen.
    als (tijd1 < time2) {System.out.println ("datum1 is vóór datum2") - // dit bericht wordt weergegeven omdat time1 
  • Titel afbeelding 4301351 16
    4
    Maak een vergelijking van het type "groter dan". Gebruik het symbool "groter dan" (>) om deze twee geheel-getalwaarden te vergelijken. als time1 is groter dan time2, Het eerste bericht moet worden weergegeven. De zin anders het is opgenomen met het doel een toepasselijke syntaxis toe te passen.
    als (tijd2 > tijd1) {System.out.println ("datum2 is na datum1") - // dit bericht wordt weergegeven omdat time2 > time1} else {System.out.println ("datum2 is niet na datum1") -}
  • Titel afbeelding 4301351 17
    5
    Maak een vergelijking van het type "zoals". Gebruik het gelijkheidsverificatiesymbool (==) om deze twee geheel-getalwaarden te vergelijken. als time1 het is hetzelfde als time2, Het eerste bericht moet worden weergegeven. Als het programma de zin bereikt anders, het betekent dat de data niet hetzelfde zijn.
    if (time1 == time2) {System.out.println ("de data zijn hetzelfde") -} else {System.out.println ("de data zijn niet hetzelfde") - // dit bericht wordt weergegeven omdat time1! = time2}
  • Delen op sociale netwerken:

    Verwant
    Hoe de leeftijd in Excel te berekenenHoe de leeftijd in Excel te berekenen
    Hoe de datumnotatie in Excel te veranderenHoe de datumnotatie in Excel te veranderen
    Hoe de datum van een bestand te veranderenHoe de datum van een bestand te veranderen
    Hoe de datum en tijd op een iPhone te veranderenHoe de datum en tijd op een iPhone te veranderen
    De datum en tijd wijzigen op een Android-telefoonDe datum en tijd wijzigen op een Android-telefoon
    Tekenreeksen in Java vergelijkenTekenreeksen in Java vergelijken
    Hoe een vakantiereactie op Yahoo in te stellenHoe een vakantiereactie op Yahoo in te stellen
    Een steen-, papier- en scharengame maken in JavaEen steen-, papier- en scharengame maken in Java
    Hoe een methode in Java te noemenHoe een methode in Java te noemen
    Hoe breuken te vergelijkenHoe breuken te vergelijken
    » » Hoe twee datums in Java te vergelijken
    © 2021 emkiset.ru