Java-duurklasse gebruiken

Java Duurklasse Gebruiken



Bij Java-programmering kunnen er bepaalde gevallen zijn waarin het nodig is om de tijd in seconden of nanoseconden te meten. Bijvoorbeeld het vergelijken en berekenen van het tijdsverschil tussen verschillende tijdframes of het retourneren van de berekende minuten, seconden of nanoseconden. In dergelijke gevallen is de “ Duur Klasse ” in Java is behulpzaam bij het effectief werken met tijdgerelateerde functionaliteiten.

Deze blog gaat dieper in op het toepassen van de 'Duration Class' in Java.





Wat is Java-duurklasse?

Duur ” is de op waarde gebaseerde klasse aanwezig in de Java-tijdbibliotheek die wordt gebruikt om de tijd in seconden en nanoseconden te meten. Deze klasse is ook onveranderlijk en thread-safe.



Methoden van duurklasse

Hieronder volgen enkele van de belangrijke methoden van de klasse Duration:



methoden Gebruik
addTo(Temporaal temporeel) Het wordt gebruikt om deze duur toe te voegen aan het specifieke tijdelijke object.
get(Tijdelijke eenheid) Het wordt gebruikt om de gevraagde eenheidswaarde op te halen.
buikspieren() Het geeft een positieve kopie van de lengte.
Duur tussen(Tijdelijke startInclusief, Tijdelijke eindeExclusief) Deze methode vindt de duur tussen twee objecten (tijdelijk).
plus(Duur duur) Er wordt toegepast om een ​​kopie van deze duur te geven met de opgegeven toegevoegde duur.
minus(Duur duur) Deze methode wordt gebruikt om een ​​kopie van deze duur te geven, samen met de verstrekte duur afgetrokken.
haal Nano() Het haalt de nanoseconden in de seconde in deze duur op.
krijgSeconden() Het haalt de seconden in deze duur op.
van (lange hoeveelheid, tijdelijke eenheid) Deze methode krijgt een duur die overeenkomt met het bedrag in de opgegeven eenheid.
ofSeconden (lange sec) Het krijgt een duur die verwijst naar het aantal seconden.
van Nanos(lang in) Het krijgt een duur die overeenkomt met het aantal nanoseconden.
van Minuten (lange min) Het krijgt een duur die het aantal minuten aangeeft.
van Millis (lange millis) Deze methode krijgt een Duur die staat voor milliseconden.
ofHours(lange uren) Het krijgt een duur die verwijst naar standaard/standaarduren.
ofDays(lange dagen) Het krijgt een duur die het aantal standaard/standaard dagen van 24 uur aangeeft.
vergelijkenTo(Duur x) Het vergelijkt de opgegeven duur met de opgegeven duur.
Duur tussen(Tijdelijke startIncl, Tijdelijke eindeExcl) Het krijgt een duur die overeenkomt met de duur tussen twee objecten (tijdelijk).
ontleden (CharSequence-tekst) Deze methode haalt een duur op uit een tekenreeks.
van(tijdelijk bedrag) Het haalt de Duration-instantie op via temporele hoeveelheid.





Laten we nu enkele van de 'Duurklasse' -methoden toepassen.

Voordat u doorgaat met de voorbeelden, importeert u het onderstaande pakket om te werken met de ' Duur ' klas:



importeer java.tijd.Duur;

Voorbeeld 1: toepassing van de duurklassen 'between()', 'get()' en 'isNegative()' in Java

Dit voorbeeld past de besproken methoden toe en retourneert de overeenkomstige uitkomst als boolean of in de vorm van berekende seconden:

public class Duurtijd {
openbare statische leegte main ( Snaar [ ] argumenten ) {
Duur timeDiff1 = Duur.tussen ( LokaleTijd.MAX, LokaleTijd.NOON ) ;
Systeem.out.println ( timeDiff1.isNegatief ( ) ) ;
Systeem.out.println ( timeDiff1.get ( ChronoUnit.SECONDEN ) ) ;
Duur timeDiff2 = Duur.tussen ( LokaleTijd.NOON, LokaleTijd.MAX ) ;
Systeem.out.println ( timeDiff2.isNegatief ( ) ) ;
Systeem.out.println ( timeDiff2.get ( ChronoUnit.SECONDEN ) ) ;
} }

In de bovenstaande regels code:

  • Pas eerst de “ tussen() ” class(Duration) methode om het tijdsverschil tussen de vermelde tijden te retourneren.
  • Opmerking: De ' Max ' komt overeen met ' 23:59:59.99 ' en de ' LocalTime.Noon ' duidt op ' 12:00 uur ”.
  • Koppel daarna de ' isNegatief() ” methode met het berekende verschil om te analyseren of het tijdsverschil negatief is door een booleaanse uitkomst te retourneren.
  • Pas ook de “ krijgen() ” methode om het berekende verschil op te halen.
  • Pas nu de ' tussen() ”-methode opnieuw door de tijdframes uit te wisselen en de besproken benaderingen voor het analyseren van de waarden en het retourneren van hun verschil te herhalen.

Uitgang

In deze uitkomst kan worden waargenomen dat de overeenkomstige tijdsverschillen worden berekend en de negatieve waarden dienovereenkomstig worden geëvalueerd.

Voordat u naar het volgende voorbeeld gaat, moet u ervoor zorgen dat u het volgende aanvullende pakket importeert om met de datum en tijd te werken:

java.time.temporal.ChronoUnit importeren;

Voorbeeld 2: de methoden Duration Class 'from()', 'getDuration()' en 'toMinutes()' toepassen

In dit voorbeeld kunnen de besproken methoden worden geïmplementeerd om de duur in uren op te halen en in minuten op te halen:

openbare klas Duurtijd2 {
openbare statische leegte main ( Snaar [ ] argumenten ) {
Duur dur = Duur.vanaf ( ChronoUnit.HOURS.getDuration ( ) ) ;
Systeem.out.println ( 'De duur in minuten is -> ' +duur tot Minuten ( ) ) ;
} }

Pas in dit codeblok de gecombineerde ' van() ' En ' getDuration() ” methoden om de duur in uren op te halen. Koppel daarna de ' naarminuten() ” methode om in plaats daarvan de duur in minuten te retourneren.

Uitgang

In de bovenstaande uitvoer is te zien dat de overeenkomstige minuten in een uur op de juiste manier worden opgehaald.

Conclusie

Duur ” is de op waarde gebaseerde klasse in de Java-tijdbibliotheek die wordt gebruikt om de tijd in seconden en nanoseconden te meten. Het kan ook worden aangeroepen met behulp van andere op duur gebaseerde eenheden, d.w.z. 'minuten' en 'uren'. Deze klasse kan worden gebruikt om de tijdsverschillen tussen de tijdframes te berekenen of de duur in een bepaald formaat terug te geven, d.w.z. ' minuten ”. Dit artikel demonstreerde het gebruik van de Java 'Duration Class'.