English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial di Base Java

Java Control Flow

Java Array

Orientamento ad oggetti Java (I)

Orientamento ad oggetti Java (II)

Orientamento ad oggetti Java (III)

Gestione delle Eccezioni Java

Lista Java

Queue Java (coda)

Map di Java

Set di Java

Input/Output (I/O) Java

Reader/Writer Java

Altri argomenti Java

Programma Java per calcolare la differenza tra due periodi di tempo

Completo di esempi Java

In questo programma imparerai a calcolare la differenza tra due periodi di tempo in Java.

Esempio: calcolare la differenza tra due periodi di tempo

public class Time {
    int seconds;
    int minutes;
    int hours;
    public Time(int hours, int minutes, int seconds) {
        this.hours = hours;
        this.minutes = minutes;
        this.seconds = seconds;
    }
    public static void main(String[] args) {
        Time start = new Time(12, 34, 55),
                stop = new Time(8, 12, 15),
                diff;
        diff = difference(start, stop);
        System.out.printf("TIME DIFFERENCE: %d:%d:%d - ", start.hours, start.minutes, start.seconds);
        System.out.printf("%d:%d:%d ", stop.hours, stop.minutes, stop.seconds);
        System.out.printf("= %d:%d:%d\n", diff.hours, diff.minutes, diff.seconds);
    }
    public static Time difference(Time start, Time stop)
    {
        Time diff = new Time(0, 0, 0);
        if(stop.seconds > start.seconds){
            --start.minutes;
            start.seconds += 60;
        }
        diff.seconds = start.seconds - stop.seconds;
        if(stop.minutes > start.minutes){
            --start.hours;
            start.minutes += 60;
        }
        diff.minutes = start.minutes - stop.minutes;
        diff.hours = start.hours - stop.hours;
        return(diff);
    }
}

Quando si esegue il programma, l'output è:

DIFERENZA TEMPO: 12:34:55 - 8:12:15 = 4:22:40

Nel programma sopra, abbiamo creato una classe Time con tre variabili membro hours, minutes e seconds. Come suggerisce il nome, essi memorizzano rispettivamente hours, minutes e seconds del tempo.

La classe Time ha un costruttore per inizializzare hours, minutes e seconds.

Abbiamo creato una funzione statica difference, che accetta due variabili di tempo come parametri, ricerca la differenza e la restituisce come oggetto Time

Completo di esempi Java