Nou Generator de prompt AI — scrie prompturi mai bune pentru ChatGPT, Claude și Gemini →

Duration.inWholeSeconds în Kotlin

Transformă o durată într-un număr Long de secunde sau milisecunde întregi (restul se taie).

Sintaxă
val Duration.inWholeSeconds: Long
val Duration.inWholeMilliseconds: Long
val Duration.inWholeMinutes: Long
fun Duration.toComponents(action: (minutes: Long, seconds: Int, nanoseconds: Int) -> T): T

Ce face Duration.inWholeSeconds

durata.inWholeSeconds returnează numărul de secunde întregi din durată, ca Long; fracțiunile de secundă sunt tăiate, nu rotunjite. inWholeMilliseconds face același lucru în milisecunde, iar inWholeMinutes, inWholeHours și inWholeDays în celelalte unități.

Le folosești când trebuie să dai durata unei funcții care așteaptă un număr, de exemplu Thread.sleep(d.inWholeMilliseconds). Pentru a separa o durată în minute și secunde (ca 2:05), folosește toComponents { min, sec, _ -> ... }.

Ce returnează

Un Long.

Exemple

Exemplul 1: Conversii în unități întregi

2 minute și 30,9 secunde au 150 de secunde întregi; partea de 0,9 s este tăiată.

import kotlin.time.Duration.Companion.milliseconds
import kotlin.time.Duration.Companion.minutes

fun main() {
    val d = 2.minutes + 30900.milliseconds
    println(d)
    println(d.inWholeSeconds)
    println(d.inWholeMilliseconds)
    println(d.inWholeMinutes)
}

Rezultat

2m 30.9s
150
150900
2

Exemplul 2: Afișare ca mm:ss

toComponents desface durata în minute și secunde, pe care le completăm cu zero.

import kotlin.time.Duration.Companion.seconds

fun main() {
    for (s in listOf(65, 125, 3599)) {
        val text = s.seconds.toComponents { min, sec, _ ->
            "${min.toString().padStart(2, '0')}:${sec.toString().padStart(2, '0')}"
        }
        println("$s secunde = $text")
    }
}

Rezultat

65 secunde = 01:05
125 secunde = 02:05
3599 secunde = 59:59

Exemplul 3: Durata pentru o funcție care cere milisecunde

Calculăm pauza ca Duration și o dăm lui Thread.sleep în milisecunde.

import kotlin.time.Duration.Companion.milliseconds

fun main() {
    val pauza = 150.milliseconds
    println("Aștept ${pauza.inWholeMilliseconds} ms...")
    Thread.sleep(pauza.inWholeMilliseconds)
    println("Gata")
}

Rezultat

Aștept 150 ms...
Gata

Greșeli frecvente

  • Te aștepți la rotunjire: 2,9 secunde dau inWholeSeconds = 2, nu 3.
  • Scrii d.inWholeSeconds() cu paranteze. Este proprietate: d.inWholeSeconds.

Comenzi înrudite

  • Int.seconds: Creează o durată (Duration) dintr-un număr: 90.seconds, 5.minutes, 250.milliseconds.
  • Thread.sleep: Oprește programul (firul curent) pentru un număr dat de milisecunde, apoi continuă.
  • measureTimeMillis: Măsoară cât durează un bloc de cod: measureTimeMillis dă milisecunde (Long), measureTime dă un Duration.
Comunitate & Schimb de cunoștințe

Întrebări & Exemple de Cod: Duration.inWholeSeconds

Ai o nelămurire despre utilizarea comenzii Duration.inWholeSeconds sau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!

💬

Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!

Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.

Comunitate Adaugă o întrebare sau distribuie un cod

Moderare & Siguranță:

Pentru a menține calitatea și securitatea informațiilor, fiecare întrebare sau fragment de cod/prompt este analizat (manual sau prin moderare asistată de AI) înainte de publicare.