在此程序中,您將學習使用和不使用pow()函數(shù)來計算數(shù)字的冪。
fun main(args: Array<String>) { val base = 3 var exponent = 4 var result: Long = 1 while (exponent != 0) { result *= base.toLong() --exponent } println("Answer = $result") }
運行該程序時,輸出為:
Answer = 81
在此程序中,分別為base和exponent分配了值3和4。
使用while循環(huán),我們將result乘以base,直到指數(shù)(exponent)變?yōu)榱銥橹埂?/p>
在這種情況下,我們result乘以基數(shù)總共4次,因此 result= 1 * 3 * 3 * 3 * 3 = 81。我們還需要將base轉(zhuǎn)換為Long,因為result只接受Long,而Kotlin關(guān)注的是類型安全。
但是,與Java一樣,如果指數(shù)為負,以上代碼就不起作用。為此,需要在Kotlin中使用pow()函數(shù)。
這是等效的Java代碼:計算數(shù)字冪的Java程序
fun main(args: Array<String>) { val base = 3 val exponent = -4 val result = Math.pow(base.toDouble(), exponent.toDouble()) println("Answer = $result") }
運行該程序時,輸出為:
Answer = 0.012345679012345678
在此程序中,我們使用了標準庫函數(shù)Math.pow()來計算基數(shù)的冪。
我們還需要轉(zhuǎn)換base和exponent到Double,因為 pow 函數(shù)只接受Double參數(shù)。