I Java-programmering kan der være visse tilfælde, hvor der er behov for at måle tiden i sekunder eller nanosekunder. For eksempel at sammenligne og beregne tidsforskellen mellem forskellige tidsrammer eller returnere de beregnede minutter, sekunder eller nanosekunder. I sådanne tilfælde vil ' Varighed Klasse ” i Java hjælper med at arbejde med tidsrelaterede funktionaliteter effektivt.
Denne blog vil uddybe anvendelsen af 'Varighedsklassen' i Java.
Hvad er Java Duration Class?
“ Varighed ” er den værdibaserede klasse, der findes i Java-tidsbiblioteket, der bruges til at måle tid i sekunder og nanosekunder. Denne klasse er også uforanderlig og trådsikker.
Metoder til varighed Klasse
Følgende er nogle af de vigtige metoder i Duration-klassen:
Metoder | Brug |
addTo(Temporal temporal) | Det bruges til at tilføje denne varighed til det bestemte tidsmæssige objekt. |
få (tidlig enhed) | Den bruges til at hente den ønskede enhedsværdi. |
abs() | Det giver en positiv kopi af længden. |
Varighed mellem (Midlertidig startInklusive, Temporal EndExclusive) | Denne metode finder varigheden mellem to objekter (tidsbestemt). |
plus (varighed varighed) | Det anvendes til at give en kopi af denne varighed med den angivne tilføjede varighed. |
minus (varighed varighed) | Denne metode bruges til at give en kopi af denne varighed sammen med den angivne varighed fratrukket. |
getNano() | Den henter nanosekunderne i sekundet i denne varighed. |
getSeconds() | Den henter sekunderne i denne varighed. |
af (langt beløb, tidsmæssig enhed) | Denne metode får en Varighed svarende til beløbet i den angivne enhed. |
af sekunder (lang sek) | Den får en Varighed, der henviser til antallet af sekunder. |
af Nanos (langt inde) | Den får en Varighed svarende til antallet af nanosekunder. |
af minutter (lange min) | Den får en Varighed, der angiver antallet af minutter. |
ofMillis(lange millis) | Denne metode får en Varighed, der repræsenterer millisekunder. |
ofHours (lange timer) | Den får en Varighed, der refererer til standard-/standardtimer. |
ofDays (lange dage) | Den får en Varighed, der angiver antallet af standard/standard 24-timersdage. |
sammenligneTil(Varighed x) | Den sammenligner den givne varighed med den angivne varighed. |
Varighed mellem (Temporal startIncl, Temporal endExcl) | Den får en Varighed svarende til varigheden mellem to objekter (tidsbestemt). |
parse(CharSequence-tekst) | Denne metode henter en varighed fra en tekststreng. |
fra (Tidligere beløb) | Den henter Duration-forekomsten via tidsmæssig mængde. |
Lad os nu anvende nogle af 'Varighedsklasse'-metoderne.
Inden du går videre til eksemplerne, skal du importere nedenstående pakke for at arbejde med ' Varighed ' klasse:
import java.time.Duration;
Eksempel 1: Anvendelse af varighedsklassen 'between()', 'get()' og 'isNegative()'-metoder i Java
Dette eksempel anvender de diskuterede metoder og returnerer det tilsvarende resultat som et boolsk eller i form af beregnede sekunder:
offentlig klasse Varighedstid {offentlig statisk tomrum hoved ( Snor [ ] args ) {
Varighed timeDiff1 = Duration.between ( LocalTime.MAX, LocalTime.NOON ) ;
System.out.println ( timeDiff1.erNegativ ( ) ) ;
System.out.println ( timeDiff1.get ( ChronoUnit.SECONDS ) ) ;
Varighed timeDiff2 = Duration.between ( LocalTime.NOON, LocalTime.MAX ) ;
System.out.println ( timeDiff2.erNegativ ( ) ) ;
System.out.println ( timeDiff2.get ( ChronoUnit.SECONDS ) ) ;
} }
I ovenstående kodelinjer:
- Først og fremmest skal du anvende ' mellem() ” class(Duration) metode til at returnere tidsforskellen mellem de angivne tidspunkter.
- Bemærk: Det ' Maks ' svarer til ' 23:59:59,99 ' og ' LocalTime.Middag ' angiver ' 12:00 ”.
- Tilknyt derefter ' er negativ() ” metode med den beregnede forskel til at analysere om tidsforskellen er negativ ved at returnere et boolesk udfald.
- Anvend også ' få() ” metode til at hente den beregnede forskel.
- Anvend nu ' mellem() ” metode igen ved at udveksle tidsrammer og gentage de diskuterede tilgange til at analysere værdierne og returnere deres forskel.
Produktion
I dette resultat kan det observeres, at de tilsvarende tidsforskelle beregnes, og de negative værdier vurderes i overensstemmelse hermed.
Før du går videre til det næste eksempel, skal du sørge for at importere følgende ekstra pakke for at arbejde med dato og klokkeslæt:
importer java.time.temporal.ChronoUnit;
Eksempel 2: Anvendelse af varighedsklassen 'from()', 'getDuration()' og 'toMinutes()'-metoderne
I dette eksempel kan de diskuterede metoder implementeres til at hente varigheden i timer og hente den på minutter:
offentlig klasse Varighedstid2 {offentlig statisk tomrum hoved ( Snor [ ] args ) {
Varighed dur = Varighed.fra ( ChronoUnit.HOURS.getDuration ( ) ) ;
System.out.println ( 'Varigheden i minutter er ->' +varighed.tilMinutter ( ) ) ;
} }
I denne kodeblok skal du anvende den kombinerede ' fra() ' og ' getDuration() ” metoder til at hente varigheden i timer. Tilknyt derefter ' tilMinute() ” metode til at returnere varigheden i minutter i stedet.
Produktion
I ovenstående output kan det ses, at de tilsvarende minutter i en time hentes passende.
Konklusion
“ Varighed ” er den værdibaserede klasse i Java-tidsbiblioteket, der bruges til at måle tid i sekunder og nanosekunder. Det kan også kaldes ved hjælp af andre varighedsbaserede enheder, dvs. 'minutter' og 'timer'. Denne klasse kan bruges til at beregne tidsforskellene mellem tidsrammerne eller returnere varigheden i et bestemt format, dvs. minutter ”. Denne artikel demonstrerede brugen af Java 'Duration Class'.