Java Language
Lokale tijd
Zoeken…
Syntaxis
- LocalTime time = LocalTime.now (); // Wordt geïnitialiseerd met de huidige systeemklok
- LocalTime time = LocalTime.MIDNIGHT; // 00:00
- LocalTime time = LocalTime.NOON; // 12:00
- LocalTime time = LocalTime.of (12, 12, 45); // 12:12:45
parameters
Methode | uitgang |
---|---|
LocalTime.of(13, 12, 11) | 13:12:11 |
LocalTime.MIDNIGHT | 00:00 |
LocalTime.NOON | 00:00 |
LocalTime.now() | Huidige tijd van systeemklok |
LocalTime.MAX | De maximale ondersteunde lokale tijd 23: 59: 59.999999999 |
LocalTime.MIN | De minimum ondersteunde lokale tijd 00:00 |
LocalTime.ofSecondOfDay(84399) | 23:59:59, verkrijgt tijd van de tweede dagwaarde |
LocalTime.ofNanoOfDay(2000000000) | 00:00:02, verkrijgt tijd van nanos-van-dagwaarde |
Opmerkingen
Zoals de LocalTime
aangeeft, vertegenwoordigt LocalTime
een tijd zonder een tijdzone. Het vertegenwoordigt geen datum. Het is een eenvoudig label voor een bepaalde tijd.
De klasse is value-based en de equals
methode moet worden gebruikt bij het doen van vergelijkingen.
Deze klasse komt uit het pakket java.time.
Tijd modificatie
U kunt uren, minuten, seconden en nanoseconden toevoegen:
LocalTime time = LocalTime.now();
LocalTime addHours = time.plusHours(5); // Add 5 hours
LocaLTime addMinutes = time.plusMinutes(15) // Add 15 minutes
LocalTime addSeconds = time.plusSeconds(30) // Add 30 seconds
LocalTime addNanoseconds = time.plusNanos(150_000_000) // Add 150.000.000ns (150ms)
Tijdzones en hun tijdsverschil
import java.time.LocalTime;
import java.time.ZoneId;
import java.time.temporal.ChronoUnit;
public class Test {
public static void main(String[] args)
{
ZoneId zone1 = ZoneId.of("Europe/Berlin");
ZoneId zone2 = ZoneId.of("Brazil/East");
LocalTime now = LocalTime.now();
LocalTime now1 = LocalTime.now(zone1);
LocalTime now2 = LocalTime.now(zone2);
System.out.println("Current Time : " + now);
System.out.println("Berlin Time : " + now1);
System.out.println("Brazil Time : " + now2);
long minutesBetween = ChronoUnit.MINUTES.between(now2, now1);
System.out.println("Minutes Between Berlin and Brazil : " + minutesBetween +"mins");
}
}
Tijdsduur tussen twee LocalTime
Er zijn twee equivalente manieren om de hoeveelheid tijdseenheid tussen twee LocalTime
: (1) until(Temporal, TemporalUnit)
methode en via (2) TemporalUnit.between(Temporal, Temporal)
.
import java.time.LocalTime;
import java.time.temporal.ChronoUnit;
public class AmountOfTime {
public static void main(String[] args) {
LocalTime start = LocalTime.of(1, 0, 0); // hour, minute, second
LocalTime end = LocalTime.of(2, 10, 20); // hour, minute, second
long halfDays1 = start.until(end, ChronoUnit.HALF_DAYS); // 0
long halfDays2 = ChronoUnit.HALF_DAYS.between(start, end); // 0
long hours1 = start.until(end, ChronoUnit.HOURS); // 1
long hours2 = ChronoUnit.HOURS.between(start, end); // 1
long minutes1 = start.until(end, ChronoUnit.MINUTES); // 70
long minutes2 = ChronoUnit.MINUTES.between(start, end); // 70
long seconds1 = start.until(end, ChronoUnit.SECONDS); // 4220
long seconds2 = ChronoUnit.SECONDS.between(start, end); // 4220
long millisecs1 = start.until(end, ChronoUnit.MILLIS); // 4220000
long millisecs2 = ChronoUnit.MILLIS.between(start, end); // 4220000
long microsecs1 = start.until(end, ChronoUnit.MICROS); // 4220000000
long microsecs2 = ChronoUnit.MICROS.between(start, end); // 4220000000
long nanosecs1 = start.until(end, ChronoUnit.NANOS); // 4220000000000
long nanosecs2 = ChronoUnit.NANOS.between(start, end); // 4220000000000
// Using others ChronoUnit will be thrown UnsupportedTemporalTypeException.
// The following methods are examples thereof.
long days1 = start.until(end, ChronoUnit.DAYS);
long days2 = ChronoUnit.DAYS.between(start, end);
}
}
Intro
LocalTime is een onveranderlijke klasse en thread-safe, gebruikt om tijd weer te geven, vaak gezien als uur-min-sec. Tijd wordt weergegeven tot nanoseconde precisie. De waarde "13: 45.30.123456789" kan bijvoorbeeld worden opgeslagen in een LocalTime.
Deze klasse slaat geen datum of tijdzone op. In plaats daarvan is het een beschrijving van de lokale tijd zoals te zien op een wandklok. Het kan geen moment op de tijdlijn vertegenwoordigen zonder aanvullende informatie zoals een offset of tijdzone. Dit is een op waarden gebaseerde klasse, de methode equals moet worden gebruikt voor vergelijkingen.
Fields
MAX - De maximaal ondersteunde LocalTime, '23: 59: 59.999999999 '. MIDNIGHT, MIN, NOON
Belangrijke statische methoden
now (), now (Clock clock), now (ZoneId zone), parse (CharSequence-tekst)
Belangrijke instantie methoden
isAfter (LocalTime other), isB Before (LocalTime other), min (TemporalAmount amountToSubtract), minus (long amountToSubtract, TemporalUnit unit), plus (TemporalAmount amountToAdd), plus (long amountToAdd, TemporalUnit unit)
ZoneId zone = ZoneId.of("Asia/Kolkata");
LocalTime now = LocalTime.now();
LocalTime now1 = LocalTime.now(zone);
LocalTime then = LocalTime.parse("04:16:40");
Verschil in tijd kan op een van de volgende manieren worden berekend
long timeDiff = Duration.between(now, now1).toMinutes();
long timeDiff1 = java.time.temporal.ChronoUnit.MINUTES.between(now2, now1);
U kunt ook uren, minuten of seconden toevoegen / aftrekken van elk object van LocalTime.
minUren (lange urenToSubtract), minusMinuten (lange urenToMinutes), minusNanos (lange nanosToSubtract), minusSeconden (lange secondenToSubtract), plusUren (lange urenToSubtract), plusMinuten (lange urenToMinutes), plusNanos (lange nanosToStracts (lange nanosToStracts)
now.plusHours(1L);
now1.minusMinutes(20L);