Kotlin檢查是否為閏年

Kotlin 實(shí)例大全

在此程序中,您將學(xué)習(xí)在Kotlin中檢查給定年份是否為閏年。使用if else語句和when語句進(jìn)行檢查。

閏年可以被4整除,但以00結(jié)尾的世紀(jì)年除外。只有在能被400整除的情況下,世紀(jì)年才是閏年

示例1:使用if else語句檢查Ko年的Kotlin程序

fun main(args: Array<String>) {

    val year = 1900
    var leap = false

    if (year % 4 == 0) {
        if (year % 100 == 0) {
            //year 能被400整除,因此是閏年
            leap = year % 400 == 0
        } else
            leap = true
    } else
        leap = false

    println(if (leap) "$year 是閏年." else "$year 不是閏年.")
}

運(yùn)行該程序時(shí),輸出為:

1900 不是閏年.

在上述程序中,給定年份1900存儲在變量 year 中。

  • 因?yàn)?900年可以被4整除,也是一個(gè)世紀(jì)年(以00結(jié)尾),而閏年是可以被400整除。因?yàn)?900不能被400整除,所以1900年不是閏年。

  • 但是,如果我們更改year為2000,則它可以被4整除,是一個(gè)世紀(jì)年份,也可以被400整除。因此,2000是閏年。

  • 同樣,如果我們將年份更改為2012,則該年份可以被4整除,并且不是世紀(jì)年份,因此2012是閏年。 我們不需要再檢查2012年是否可以被400整除。

以下是等效的Java代碼:檢查閏年的Java程序

示例2:Kotlin程序使用when表達(dá)式來檢查閏年

fun main(args: Array<String>) {

    val year = 2012
    var leap = false

    leap = when {
        year % 4 == 0 -> {
            when {
                year % 100 == 0 -> year % 400 == 0
                else -> true
            }
        }
        else -> false
    }

    println(if (leap) "$year 是閏年." else "$year 不是閏年.")
}

運(yùn)行該程序時(shí),輸出為:

2012 是閏年.

在上面的程序中,我們使用了when表達(dá)式,而不是使用if else語句。

when表達(dá)式的工作方式如下:

  • 當(dāng)年(year)可被 4 整除時(shí):

    • 如果能被4整除,則再次檢查是否year可被400整除,然后返回true 或 false

    • when輸入另一個(gè)表達(dá)式,檢查 year 是否可以被100整除

    • 如果不能除以100,則 year 不是一個(gè)世紀(jì)年(以00結(jié)尾),然后返回 true

  • 如果 year 不能被4整除,則返回 false

根據(jù)leap的值,它使用內(nèi)聯(lián)if else打印輸出。

Kotlin 實(shí)例大全

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清