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

Programa de Kotlin que suma dos fechas

Colección completa de ejemplos de Kotlin

En este programa, aprenderá a sumar dos fechas utilizando Calendar en Kotlin.

Dado que el eón de tiempo de Java es1970 años, lo que significa que su fecha comenzará1970 años, cuando se suman dos objetos de fecha, se perderá aproximadamente1970 años. Por lo tanto, utilizamos Calendar.

Ejemplo: agregar dos fechas

import java.util.Calendar
fun main(args: Array<String>) {
    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}")
}

Al ejecutar el programa, la salida es:

Tue Aug 08 10:20:56 NPT 2017 + Tue Aug 08 10:20:56 NPT 2017 = Mon Apr 16 20:41:53 NPT 4035

En el programa anterior, c1y c2Almacenar la fecha actual. Luego, simplemente clonamos c1y agregar uno a la vez c2de cada propiedad DateTime.

Como puedes ver, hemos añadido un mes. Esto se debe a que los meses en Kotlin comienzan en 0.

O también puedes usar Joda para manejar tiempo en Kotlin/Operaciones con fechas.

A continuación, se muestra el código Java equivalente:Programa Java para agregar dos fechas

Colección completa de ejemplos de Kotlin