Selles programmis õpite kalendrisse lisama Java-s kaks kuupäeva.
Selle näite mõistmiseks peaksid teil olema teadmised järgmistest Java programmeerimise teemadest:
- Java klass ja objektid
- Java põhisisend ja väljund
Kuna Java ajastu on 1970, Date
ei tööta objektis kujutatud aeg . See tähendab, et teie kuupäevad algavad 1970. aastast ja kahe Date
objekti lisamisel jääb summa vahele umbes 1970 aastat. Niisiis, me kasutame Calendar
selle asemel.
Näide: Java-programm kahe kuupäeva lisamiseks
import java.util.Calendar; public class AddDates ( public static void main(String() args) ( Calendar c1 = Calendar.getInstance(); Calendar c2 = Calendar.getInstance(); Calendar cTotal = (Calendar) c1.clone(); cTotal.add(Calendar.YEAR, c2.get(Calendar.YEAR)); cTotal.add(Calendar.MONTH, c2.get(Calendar.MONTH) + 1); // Zero-based months cTotal.add(Calendar.DATE, c2.get(Calendar.DATE)); cTotal.add(Calendar.HOUR_OF_DAY, c2.get(Calendar.HOUR_OF_DAY)); cTotal.add(Calendar.MINUTE, c2.get(Calendar.MINUTE)); cTotal.add(Calendar.SECOND, c2.get(Calendar.SECOND)); cTotal.add(Calendar.MILLISECOND, c2.get(Calendar.MILLISECOND)); System.out.format("%s + %s = %s", c1.getTime(), c2.getTime(), cTotal.getTime()); ) )
Väljund
Teisipäev 8. august 10:20:56 NPT 2017 + teisipäev 8. august 10:20:56 NPT 2017 = esmaspäev, 16. aprill 20:41:53 NPT 4035
Ülaltoodud programmis salvestavad c1 ja c2 praeguse kuupäeva. Seejärel kloonime lihtsalt c1 ja lisame üksteise järel kuupäeva ja kellaaja atribuudid c2.
Nagu näete, oleme kuude hulka lisanud 1. Seda seetõttu, et kuud algavad Java-s 0-ga.
Teise võimalusena võite Jodat kasutada ka Java-s kellaaja / kuupäeva toiminguteks.