Recherche…


Syntaxe

  • LocalTime time = LocalTime.now (); // Initialise avec l'horloge système actuelle
  • LocalTime time = LocalTime.MIDNIGHT; // 00:00
  • LocalTime time = LocalTime.NOON; // 12:00
  • LocalTime time = LocalTime.of (12, 12, 45); // 12:12:45

Paramètres

Méthode Sortie
LocalTime.of(13, 12, 11) 13:12:11
LocalTime.MIDNIGHT 00:00
LocalTime.NOON 12:00
LocalTime.now() Heure actuelle de l'horloge système
LocalTime.MAX Heure locale maximale prise en charge 23: 59: 59.999999999
LocalTime.MIN Heure locale minimale prise en charge 00:00
LocalTime.ofSecondOfDay(84399) 23:59:59, obtient le temps de la valeur du deuxième jour
LocalTime.ofNanoOfDay(2000000000) 00:00:02, Obtient le temps de la valeur de nanos de jour

Remarques

Comme le nom de classe indique, LocalTime représente une heure sans fuseau horaire. Cela ne représente pas une date. C'est une étiquette simple pour un temps donné.

La classe est basée sur les valeurs et la méthode equals doit être utilisée lors des comparaisons.

Cette classe provient du package java.time.

Modification du temps

Vous pouvez ajouter des heures, des minutes, des secondes et des nanosecondes:

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)

Les fuseaux horaires et leur décalage horaire

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");          
    }
}

Durée entre deux heures locales

Il y a deux façons équivalentes de calculer la quantité d'unité de temps entre deux LocalTime : (1) until(Temporal, TemporalUnit) méthode until(Temporal, TemporalUnit) unité until(Temporal, TemporalUnit) et (2) unité 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); 
    }
}

Introduction

LocalTime est une classe immuable et sécurisée pour les threads, utilisée pour représenter l'heure, souvent vue sous forme d'heure-seconde. Le temps est représenté avec une précision à la nanoseconde. Par exemple, la valeur "13: 45.30.123456789" peut être stockée dans un LocalTime.

Cette classe ne stocke ni ne représente une date ou un fuseau horaire. Au lieu de cela, il s'agit d'une description de l'heure locale telle qu'elle apparaît sur une horloge murale. Il ne peut pas représenter un instant sur la ligne de temps sans informations supplémentaires telles qu'un décalage ou un fuseau horaire. Ceci est une classe basée sur la valeur, la méthode égale doit être utilisée pour les comparaisons.

Des champs

MAX - Le maximum de LocalTime pris en charge, '23: 59: 59.999999999 '. MINUIT, MIN, MIDI

Méthodes statiques importantes

now (), maintenant (horloge), maintenant (zone ZoneId), analyse (texte CharSequence)

Méthodes d'instance importantes

isAfter (LocalTime autre), isBefore (LocalTime autre), moins (TemporalAmount amountToSubtract), moins (long amountToSubtract, unité TemporalUnit), plus (TemporalAmount amountToAdd), plus (montant longAjout, unité TemporalUnit)

ZoneId zone = ZoneId.of("Asia/Kolkata");
LocalTime now = LocalTime.now();
LocalTime now1 = LocalTime.now(zone);
LocalTime then = LocalTime.parse("04:16:40");

La différence de temps peut être calculée de l'une des manières suivantes

long timeDiff = Duration.between(now, now1).toMinutes();
long timeDiff1 = java.time.temporal.ChronoUnit.MINUTES.between(now2, now1);

Vous pouvez également ajouter / soustraire des heures, des minutes ou des secondes de tout objet de LocalTime.

minusHours (long hoursToSubtract), minusMinutes (long hoursToSubtract), minusNanos (long hoursToSubtract), plusHours (long hoursToSubtract), plusMinutes (long hoursToMinutes), plusNanos (long nanosToSubtract), plusSeconds (long secondsToSubtract)

now.plusHours(1L);
now1.minusMinutes(20L);


Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow