1. LocalDateTimeклас
Класът LocalDateTimeсъчетава възможностите на класовете LocalDateи LocalTime: съхранява Howто дата, така и час. Неговите обекти също са неизменни, а методите му са подобни на тези на класовете LocalDateи LocalTime.
Получаване на текущата дата и час
Тук всичко е Howто бихте очаквали: ние използваме now()метода. Пример:
| Код | Конзолен изход |
|---|---|
|
|
Когато се показват на екрана, датата и часът са разделени с буквата T.
Получаване на конкретна дата и час
Не е изненадващо, че всичко е подобно на класовете LocalDateи LocalTime— използваме of()метода:
... = LocalDateTime.of(year, month, day, hours, minutes, seconds);
Първо, има параметри, които указват датата в същите формати като в LocalDateкласа. След това има параметри, които определят времето в същите формати като в LocalTimeкласа. of()По-долу е даден списък на всички варианти на метода:
| Методи |
|---|
|
|
|
|
|
|
|
Можете да зададете датата директно or индиректно чрез LocalDateи LocalTimeобекти:
| Код |
|---|
|
| Конзолен изход |
|
Класът LocalDateTimeима методи за получаване на елементи от дата и/or час. Те точно отразяват методите на класовете LocalDateи LocalTime. Тук няма да ги повтаряме.
2. Instantклас
Създателите на Java също не са забравor старите методи.
API за дата и час включва Instant клас за работа с време, предназначено за процеси, които се случват в компютрите. Вместо часове, minutesи и секунди, той работи със секунди, мorсекунди и наносекунди.
Този клас има две полета, които представляват:
- броя секунди , изминали от 1 януари 1970 г
- няколко наносекунди
Класът за разработчици ли беше? да Ето защо изчислява времето в Unix-времето, което започва в началото на 1970 г.
Може дори да се каже, че Instantкласът е опростена version на Dateкласа, запазвайки само това, от което програмистите се нуждаят.
Можете да получите Instantобект по абсолютно същия начин като LocalTimeобект:
Instant timestamp = Instant.now();
Където timestampе Instantпроменлива и е извикване на статичния метод на класа.Instant.now()now()Instant
Пример:
| Код | Конзолен изход |
|---|---|
|
|
Можете също така да създадете нов обект, като използвате варианти на of()метода, като прехвърлите времето, изминало от 1 януари 1970 г.:
|
Трябва да преминете броя мorсекунди |
|
Трябва да преминете броя секунди |
|
Трябва да преминете секундите и наносекунди |
Налични методи за Instantобекти
Класът Instant има два метода, които връщат стойностите на неговите полета:
|
Броят секунди, изминали от 1 януари 1970 г |
|
Наносекунди. |
|
Брой мorсекунди, изминали от 1 януари 1970 г |
Има и методи за създаване на нови Instantобекти на базата на съществуващ:
|
Добавя секунди към текущото време |
|
Добавя мorсекунди |
|
Добавя наносекунди |
|
Изважда секунди |
|
Изважда мorсекунди |
|
Изважда наносекунди |
Примери:
| Код | Конзолен изход |
|---|---|
|
|
GO TO FULL VERSION