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

Tutorial Básico de Java

Controle de Fluxo Java

Java Arrays

Java Orientado a Objetos(I)

Java Orientação a Objetos (II)

Java Orientação a Objetos (III)

Tratamento de Exceções Java

Java Lista (List)

Java Fila (Queue)

Java Conjunto Map

Java Conjunto Set

Java Entrada/Saída(I/)

Java Reader/Escritor

Temas Java outros

Programa Java para calcular a diferença entre dois períodos de tempo

Java Exemplos Completos

Neste programa, você aprenderá a calcular a diferença entre dois períodos de tempo em Java.

Exemplo: calcular a diferença entre dois períodos de tempo

public class Tempo {
    int segundos;
    int minutos;
    int horas;
    public Tempo(int horas, int minutos, int segundos) {
        this.horas = horas;
        this.minutos = minutos;
        this.segundos = segundos;
    }
    public static void main(String[] args) {
        Tempo start = new Tempo(12, 34, 55),
                stop = new Tempo(8, 12, 15),
                diff;
        diff = diferenciar(start, stop);
        System.out.printf("DIFERENÇA DE TEMPO: %d:%d:%d - ", start.horas, start.minutos, start.segundos);
        System.out.printf("%d:%d:%d ", stop.horas, stop.minutos, stop.segundos);
        System.out.printf("= %d:%d:%d\n", diff.horas, diff.minutos, diff.segundos);
    }
    public static Tempo diferenciar(Tempo start, Tempo stop)
    {
        Diferença de Tempo = new Tempo(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 executado, o programa gera a saída:

DIFERENÇA DE TEMPO: 12:34:55 - 8:12:15 = 4:22:40

No programa acima, criamos uma classe chamada Time com três variáveis membro hours, minutes e seconds. Como o nome sugere, elas armazenam respectivamente hours, minutes e seconds do tempo.

A classe Time possui um construtor que inicializa hours, minutes e seconds.

Criamos também uma função estática difference, que aceita dois parâmetros de tempo e encontra a diferença, retornando como um objeto Time

Java Exemplos Completos