示例延长以呈现人类可读的字符串
给定 Int
或 Long
类型的任何值来呈现人类可读的字符串:
fun Long.humanReadable(): String {
if (this <= 0) return "0"
val units = arrayOf("B", "KB", "MB", "GB", "TB", "EB")
val digitGroups = (Math.log10(this.toDouble())/Math.log10(1024.0)).toInt();
return DecimalFormat("#,##0.#").format(this/Math.pow(1024.0, digitGroups.toDouble())) + " " + units[digitGroups];
}
fun Int.humanReadable(): String {
return this.toLong().humanReadable()
}
然后很容易用作:
println(1999549L.humanReadable())
println(someInt.humanReadable())