V programování Java mohou nastat určité případy, kdy je potřeba měřit čas v sekundách nebo nanosekundách. Například porovnání a výpočet časového rozdílu mezi různými časovými rámcemi nebo vrácení vypočítaných minut, sekund nebo nanosekund. V takových případech se „ Třída trvání ” v Javě pomáhá efektivně pracovat s funkcemi souvisejícími s časem.
Tento blog se bude podrobně zabývat používáním „třídy trvání“ v Javě.
Co je Java Duration Class?
“ Doba trvání ” je třída založená na hodnotách přítomná v časové knihovně Java, která se používá k měření času v sekundách a nanosekundách. Tato třída je také neměnná a bezpečná pro vlákna.
Metody trvání třídy
Níže jsou uvedeny některé z důležitých metod třídy Duration:
Metody | Používání |
addTo (Dočasné časové) | Používá se k přidání této doby trvání ke konkrétnímu časovému objektu. |
get (časová jednotka) | Používá se k načtení požadované hodnoty jednotky. |
břišní svaly() | Poskytuje pozitivní kopii délky. |
Trvání mezi (Časový začátekVčetně, Časový konecExkluzivní) | Tato metoda zjišťuje trvání mezi dvěma objekty (časové). |
plus (doba trvání) | Používá se k poskytnutí kopie této doby trvání s poskytnutou přidanou dobou trvání. |
mínus (doba trvání) | Tato metoda se používá k získání kopie této doby trvání spolu s odečtenou poskytnutou dobou trvání. |
getNano() | Získává nanosekundy za sekundu v tomto trvání. |
getSeconds() | Načte sekund v tomto trvání. |
of (dlouhé množství, časová jednotka) | Tato metoda získá Duration odpovídající množství v poskytnuté jednotce. |
sekund (dlouhá sekunda) | Získává Duration odkazující na počet sekund. |
ofNanos (dlouho dovnitř) | Získává Trvání odpovídající počtu nanosekund. |
ofMinutes (dlouhé min) | Získává Duration označující počet minut. |
ofMillis (dlouhá milis) | Tato metoda získá Duration představující milisekundy. |
ofHours (dlouhé hodiny) | Získává Duration odkazující na standardní/výchozí hodiny. |
ofDays (dlouhé dny) | Získává Trvání udávající počet standardních/výchozích 24hodinových dnů. |
PorovnatTo (Trvání x) | Porovná danou dobu trvání s poskytnutou dobou trvání. |
Doba mezi (Temporal startIncl, Temporal endExcl) | Získává Trvání odpovídající době mezi dvěma objekty (časové). |
parse(text znakové sekvence) | Tato metoda načte Duration z textového řetězce. |
od (Dočasné množství) | Načte instanci Duration prostřednictvím dočasné částky. |
Nyní použijeme některé z metod „Třída trvání“.
Než přistoupíte k příkladům, importujte níže uvedený balíček pro práci s „ Doba trvání “třída:
import java.time.Duration;
Příklad 1: Použití metod třídy trvání „between()“, „get()“ a „isNegative()“ v Javě
Tento příklad použije diskutované metody a vrátí odpovídající výsledek jako logickou hodnotu nebo ve formě vypočítaných sekund:
veřejná třída Doba trvání {public static void main ( Tětiva [ ] argumenty ) {
Trvání timeDiff1 = Duration.between ( LocalTime.MAX, LocalTime.NOON ) ;
System.out.println ( timeDiff1.isNegative ( ) ) ;
System.out.println ( timeDiff1.get ( ChronoUnit.SECONDS ) ) ;
Duration timeDiff2 = Duration.between ( LocalTime.NOON, LocalTime.MAX ) ;
System.out.println ( timeDiff2.isNegative ( ) ) ;
System.out.println ( timeDiff2.get ( ChronoUnit.SECONDS ) ) ;
} }
Ve výše uvedených řádcích kódu:
- Nejprve použijte „ mezi() ” metoda class(Duration) pro vrácení časového rozdílu mezi uvedenými časy.
- Poznámka: ' Max ' odpovídá ' 23:59:59,99 “ a „ Místní čas.poledne “ označuje “ 12:00 “.
- Poté přidružte „ isNegative() ” metoda s vypočítaným rozdílem k analýze, zda je časový rozdíl záporný, vrácením booleovského výsledku.
- Aplikujte také „ dostat() ” metoda pro získání vypočteného rozdílu.
- Nyní použijte „ mezi() ” metoda opět výměnou časových rámců a opakováním diskutovaných přístupů pro analýzu hodnot a vrácení jejich rozdílu.
Výstup
V tomto výsledku lze pozorovat, že jsou vypočítány odpovídající časové rozdíly a podle toho jsou vyhodnoceny záporné hodnoty.
Než přejdete k dalšímu příkladu, ujistěte se, že jste importovali následující dodatečný balíček pro práci s datem a časem:
import java.time.temporal.ChronoUnit;
Příklad 2: Použití metod třídy Duration „from()“, „getDuration()“ a „toMinutes()“
V tomto příkladu lze diskutované metody implementovat k načtení doby trvání v hodinách a jejímu načtení v minutách:
veřejná třída Doba trvání2 {public static void main ( Tětiva [ ] argumenty ) {
Duration dur = Duration.from ( ChronoUnit.HOURS.getDuration ( ) ) ;
System.out.println ( 'Doba trvání v minutách je ->' +dur.toMinutes ( ) ) ;
} }
V tomto bloku kódu použijte kombinovaný „ z() ' a ' getDuration() ” metody pro načtení doby trvání v hodinách. Poté přidružte „ toMinutes() ” pro vrácení doby trvání v minutách.
Výstup
Ve výše uvedeném výstupu je vidět, že odpovídající minuty za hodinu jsou načteny odpovídajícím způsobem.
Závěr
“ Doba trvání ” je třída založená na hodnotách v časové knihovně Java, která se používá k měření času v sekundách a nanosekundách. Lze jej také vyvolat pomocí jiných jednotek založených na trvání, tj. „minuty“ a „hodiny“. Tuto třídu lze použít k výpočtu časových rozdílů mezi časovými rámci nebo k vrácení doby trvání v určitém formátu, např. minut “. Tento článek demonstroval využití Java „Duration Class“.