I Java-programmering kan det være visse tilfeller der det er behov for å måle tiden i sekunder eller nanosekunder. For eksempel å sammenligne og beregne tidsforskjellen mellom ulike tidsrammer eller returnere de beregnede minuttene, sekundene eller nanosekunder. I slike tilfeller vil ' Varighet Klasse ” i Java er til hjelp for å jobbe effektivt med tidsrelaterte funksjoner.
Denne bloggen vil utdype hvordan du bruker 'Varighetsklassen' i Java.
Hva er Java Duration Class?
' Varighet ” er den verdibaserte klassen som finnes i Java-tidsbiblioteket som brukes til å måle tid i sekunder og nanosekunder. Dessuten er denne klassen uforanderlig og trådsikker.
Metoder for varighet Klasse
Følgende er noen av de viktige metodene i Duration-klassen:
Metoder | Bruk |
addTo(Temporal temporal) | Den brukes til å legge til denne varigheten til det bestemte tidsmessige objektet. |
få (tidlig enhet) | Den brukes til å hente den forespurte enhetsverdien. |
abs() | Det gir en positiv kopi av lengden. |
Varighet mellom (Temporal startInclusive, Temporal endExclusive) | Denne metoden finner varigheten mellom to objekter (tidsbestemt). |
pluss(varighet varighet) | Det brukes for å gi en kopi av denne varigheten med den angitte varigheten. |
minus (varighet varighet) | Denne metoden brukes til å gi en kopi av denne varigheten sammen med den angitte varigheten trukket fra. |
getNano() | Den henter nanosekunder i sekundet i denne varigheten. |
getSeconds() | Den henter sekundene i denne varigheten. |
av (langt beløp, tidsenhet) | Denne metoden får en Varighet som tilsvarer beløpet i den oppgitte enheten. |
av sekunder (langt sek) | Den får en Varighet som refererer til antall sekunder. |
ofNanos (lenge inne) | Den får en Varighet som tilsvarer antall nanosekunder. |
av minutter (langt min) | Den får en Varighet som angir antall minutter. |
ofMillis (lang millis) | Denne metoden får en Varighet som representerer millisekunder. |
timer (lange timer) | Den får en Varighet som refererer til standard/standard timer. |
ofdays (lange dager) | Den får en Varighet som indikerer antall standard/standard 24-timers dager. |
sammenlignTil(Varighet x) | Den sammenligner den gitte varigheten med den oppgitte varigheten. |
Varighet mellom (Temporal startIncl, Temporal endExcl) | Den får en Varighet som tilsvarer varigheten mellom to objekter (temporal). |
parse(CharSequence-tekst) | Denne metoden henter en varighet fra en tekststreng. |
fra (Tidlig beløp) | Den henter Duration-forekomsten via tidsbeløp. |
La oss nå bruke noen av metodene 'Varighetsklasse'.
Før du fortsetter til eksemplene, importer pakken nedenfor for å jobbe med ' Varighet ' klasse:
import java.time.Duration;
Eksempel 1: Bruk av varighetsklassen 'between()', 'get()', og 'isNegative()'-metodene i Java
Dette eksemplet bruker de diskuterte metodene og returnerer det tilsvarende utfallet som et boolsk eller i form av beregnede sekunder:
offentlig klasse Varighetstid {offentlig statisk tomrom hoved ( String [ ] args ) {
Varighet timeDiff1 = Duration.between ( LocalTime.MAX, LocalTime.NOON ) ;
System.out.println ( timeDiff1.isNegative ( ) ) ;
System.out.println ( timeDiff1.get ( ChronoUnit.SECONDS ) ) ;
Varighet timeDiff2 = Duration.between ( LocalTime.NOON, LocalTime.MAX ) ;
System.out.println ( timeDiff2.isNegative ( ) ) ;
System.out.println ( timeDiff2.get ( ChronoUnit.SECONDS ) ) ;
} }
I kodelinjene ovenfor:
- Først av alt, bruk ' mellom() ” class(Duration) metode for å returnere tidsforskjellen mellom de angitte tidene.
- Merk: « Maks ' tilsvarer ' 23:59:59,99 ' og ' LocalTime.Noon ' indikerer ' 12:00 '.
- Etter det, tilknytt ' erNegativ() ” metode med den beregnede forskjellen for å analysere om tidsforskjellen er negativ ved å returnere et boolsk utfall.
- Bruk også ' få() ” metode for å hente den beregnede differansen.
- Bruk nå ' mellom() ”-metoden igjen ved å bytte ut tidsrammene og gjenta de diskuterte tilnærmingene for å analysere verdiene og returnere forskjellen deres.
Produksjon
I dette resultatet kan det observeres at de tilsvarende tidsforskjellene beregnes og de negative verdiene vurderes deretter.
Før du går til neste eksempel, sørg for å importere følgende tilleggspakke for å jobbe med dato og klokkeslett:
importer java.time.temporal.ChronoUnit;
Eksempel 2: Bruk av varighetsklassen 'from()', 'getDuration()' og 'toMinutes()'-metodene
I dette eksemplet kan de diskuterte metodene implementeres for å hente varigheten i timer og hente den på minutter:
offentlig klasse Varighetstid2 {offentlig statisk tomrom hoved ( String [ ] args ) {
Varighet dur = Varighet.fra ( ChronoUnit.HOURS.getDuration ( ) ) ;
System.out.println ( 'Varigheten i minutter er -> ' +dur.toMinutes ( ) ) ;
} }
I denne kodeblokken bruker du den kombinerte ' fra() ' og ' getDuration() ” metoder for å hente varigheten i timer. Etter det, tilknytt ' tilMinute() ” metode for å returnere varigheten i minutter i stedet.
Produksjon
I utgangen ovenfor kan man se at de tilsvarende minuttene i en time hentes hensiktsmessig.
Konklusjon
' Varighet ” er den verdibaserte klassen i Java-tidsbiblioteket som brukes til å måle tid i sekunder og nanosekunder. Det kan også påkalles ved å bruke andre varighetsbaserte enheter, det vil si 'minutter' og 'timer'. Denne klassen kan brukes til å beregne tidsforskjellene mellom tidsrammene eller returnere varigheten i et bestemt format, dvs. ' minutter '. Denne artikkelen demonstrerte bruken av Java 'Duration Class'.