In dit programma leer je het verschil tussen twee tijdsperioden in Java te berekenen.
Om dit voorbeeld te begrijpen, moet u kennis hebben van de volgende Java-programmeeronderwerpen:
- Java-methoden
- Java-klasse en objecten
Voorbeeld: Bereken het verschil tussen twee tijdsperioden
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) ( // create objects of Time class Time start = new Time(8, 12, 15); Time stop = new Time(12, 34, 55); Time diff; // call difference method 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", diff.hours, diff.minutes, diff.seconds); ) public static Time difference(Time start, Time stop) ( Time diff = new Time(0, 0, 0); // if start second is greater // convert minute of stop into seconds // and add seconds to stop second if(start.seconds> stop.seconds)( --stop.minutes; stop.seconds += 60; ) diff.seconds = stop.seconds - start.seconds; // if start minute is greater // convert stop hour into minutes // and add minutes to stop minutes if(start.minutes> stop.minutes)( --stop.hours; stop.minutes += 60; ) diff.minutes = stop.minutes - start.minutes; diff.hours = stop.hours - start.hours; // return the difference time return(diff); ) )
Uitvoer
TIJDVERSCHIL: 12:34:55 - 8:12:15 = 4:22:40
In het bovenstaande programma hebben we een klasse gemaakt met de naam Time
van drie lidvariabelen: uren, minuten en seconden. Zoals de naam suggereert, slaan ze respectievelijk uren, minuten en seconden van een bepaalde tijd op.
De Time
klasse heeft een constructor die de waarde van uren, minuten en seconden initialiseert.
We hebben ook een statisch functieverschil gemaakt dat twee Time
variabelen als parameters nodig heeft, het verschil vindt en het als Time
klasse retourneert .