Duration.toString
所在位置是kotlin.time.Duration.toString
,其相關用法介紹如下。
用法一
返回此持續時間值的字符串表示形式,表示為數字分量的組合,每個分量都有自己的單位。
每個組件都是一個數字,後跟單位縮寫名稱:d
、h
、m
、s
:5h
、1d 12h
、1h 0m 30.340s
。最後一個組成部分,通常是秒,可以是帶有小數部分的數字。
如果持續時間小於一秒,則表示為具有sub-second 單位之一的單個數字:ms
(毫秒)、us
(微秒)或ns
(納秒):140.884ms
, 500us
,24ns
。
負持續時間以 -
符號為前綴,如果它由多個組件組成,則用括號括起來:-12m
和 -(1h 30m)
。
特別案例:
- 無限持續時間被格式化為
"Infinity"
或"-Infinity"
沒有單位。
當您想在序列化、交換等情況下將持續時間轉換為字符串時,建議使用使用更嚴格的 ISO-8601 格式的 toIsoString 而不是此 toString
。
例子:
import kotlin.test.*
import kotlin.time.*
import kotlin.time.Duration.Companion.days
import kotlin.time.Duration.Companion.milliseconds
import kotlin.time.Duration.Companion.minutes
import kotlin.time.Duration.Companion.nanoseconds
import kotlin.time.Duration.Companion.seconds
fun main(args: Array<String>) {
//sampleStart
println(45.days) // 45d
println(1.5.days) // 1d 12h
println(1230.minutes) // 20h 30m
println(920.minutes) // 15h 20m
println(1.546.seconds) // 1.546s
println(25.12.milliseconds) // 25.12ms
//sampleEnd
}
輸出:
45d 1d 12h 20h 30m 15h 20m 1.546s 25.12ms
用法二
返回此持續時間值的字符串表示形式,以給定的 unit 表示,並使用指定的 decimals 小數點後位數進行格式化。
特別案例:
- 無限持續時間被格式化為
"Infinity"
或"-Infinity"
沒有單位。
例子:
import kotlin.test.*
import kotlin.time.*
import kotlin.time.Duration.Companion.days
import kotlin.time.Duration.Companion.milliseconds
import kotlin.time.Duration.Companion.minutes
import kotlin.time.Duration.Companion.nanoseconds
import kotlin.time.Duration.Companion.seconds
fun main(args: Array<String>) {
//sampleStart
println(1230.minutes.toString(DurationUnit.DAYS, 2)) // 0.85d
println(1230.minutes.toString(DurationUnit.HOURS, 2)) // 20.50h
println(1230.minutes.toString(DurationUnit.MINUTES)) // 1230m
println(1230.minutes.toString(DurationUnit.SECONDS)) // 73800s
//sampleEnd
}
輸出:
0.85d 20.50h 1230m 73800s
參數
decimals
- 要顯示的小數點後的位數。該值必須為非負數。即使請求更大的數字,也不會顯示超過 12 位小數。
異常
IllegalArgumentException
- 如果小數點小於零。
返回指定的 unit 中的持續時間值,後跟該單位的縮寫名稱:d
、h
、m
、s
、ms
、us
或 ns
。
相關用法
- Kotlin Duration.toIsoString用法及代碼示例
- Kotlin Duration.parseIsoStringOrNull用法及代碼示例
- Kotlin Duration.parseOrNull用法及代碼示例
- Kotlin Duration.parseIsoString用法及代碼示例
- Kotlin Duration.parse用法及代碼示例
- Kotlin Double.dec用法及代碼示例
- Kotlin Delegates.notNull用法及代碼示例
- Kotlin Delegates.vetoable用法及代碼示例
- Kotlin Delegates.observable用法及代碼示例
- Kotlin DeepRecursiveFunction用法及代碼示例
- Kotlin Double.inc用法及代碼示例
- Kotlin DeepRecursiveFunction.<init>用法及代碼示例
- Kotlin DoubleStream.toList用法及代碼示例
- Kotlin DoubleStream.asSequence用法及代碼示例
- Kotlin associateBy用法及代碼示例
- Kotlin all用法及代碼示例
- Kotlin map用法及代碼示例
- Kotlin filterNot用法及代碼示例
- Kotlin reduceRight用法及代碼示例
- Kotlin Random.Default用法及代碼示例
- Kotlin Byte.inc用法及代碼示例
- Kotlin getValue用法及代碼示例
- Kotlin windowedSequence用法及代碼示例
- Kotlin contentToString用法及代碼示例
- Kotlin groupByTo用法及代碼示例
注:本文由純淨天空篩選整理自kotlinlang.org大神的英文原創作品 kotlin.time.Duration.toString。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。