Ebben a programban megtanulhat két dátumot hozzáadni Kotlinban a Naptár használatával.
Mivel a Java korszak 1970, az Date
objektumokban megjelenített bármely idő nem fog működni. Ez azt jelenti, hogy az Ön Dátumai 1970-től kezdődnek, és amikor két Date
objektumot hozzáadunk, az összeg körülbelül 1970 évvel elmarad. Tehát inkább használjuk Calendar
.
Példa: Két dátum hozzáadása
import java.util.Calendar fun main(args: Array) ( val c1 = Calendar.getInstance() val c2 = Calendar.getInstance() val cTotal = c1.clone() as Calendar 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)) println("$(c1.time) + $(c2.time) = $(cTotal.time)") )
A program futtatásakor a kimenet a következő lesz:
Aug. 08, kedd 10:20:56 NPT 2017 + augusztus 08, kedd 10:20:56 NPT 2017 = hétfõ 16, 20:41:53 NPT 4035
A fenti programban a c1 és a c2 tárolja az aktuális dátumot. Ezután egyszerűen klónozzuk a c1-et, és egymás után hozzáadjuk a c2 egyes DateTime tulajdonságait.
Mint láthatja, hozzáadtunk 1-et a hónapokhoz. Ennek oka, hogy a hónapok 0-val kezdődnek Kotlinban.
Alternatív megoldásként használhatja a Jodát Kotlinban az idő / dátum műveletekhez is.
Itt található az egyenértékű Java-kód: Java program két dátum hozzáadásához.