我需要在 Kotlin 中计算百分比。我尝试了但没有得到正确的答案:
var percentage = (count/totalCount) * 100
it.toast("Percentage: $percentage")
Kotlin中的正确语法是什么?
很可能你正在苦恼于对两个整数应用除法运算将导致执行整数除法,从而产生整数结果的事实。
诀窍是将其中一个操作数提升为浮点类型:
var percentage = (count.toDouble() / totalCount) * 100
NaN
。对于这种情况,只要不除以0,你就应该没问题。这是一个可以在任何地方使用的扩展函数:
fun Int.divideToPercent(divideTo: Int): Int {
return if (divideTo == 0) 0
else (this / divideTo.toFloat()).toInt()
}
并像这样使用它:
val pecent = 10.divideToPercent(20)
percent
将会是50。
你甚至可以将其作为中缀函数:
infix fun Int.percentOf(value: Int): Int {
return if (this == 0) 0
else (value / this.toFloat()).toInt()
}
并像这样使用它:
val pecent = 10 percentOf 200
百分数 percent
将是 20
pecent
打错了,请问应该是 "percent" 吗? - the Tin Manval percentage = (count * 100) / totalCount
var percentage = 100.0 * count / totalCount
。 - forpas