Android 如何返回Kotlin中两个字符串之一?

Android 如何返回Kotlin中两个字符串之一?,android,kotlin,random,Android,Kotlin,Random,所以我最近刚开始通过谷歌的新课程学习Kotlin,我学习如何从骰子中随机选择一个数字。我对其中的一部分有点困惑,所以我尝试制作一个随机抛硬币程序来帮助更好地理解它。我尝试使用.random在这两个字符串之间进行选择,但它不起作用,并且给出了一个很长的错误。以下是迄今为止的代码: fun main() { val coinSide = Coin() println("You flipped a ${coinSide}") ​ ​ } ​ class Coin ()

所以我最近刚开始通过谷歌的新课程学习Kotlin,我学习如何从骰子中随机选择一个数字。我对其中的一部分有点困惑,所以我尝试制作一个随机抛硬币程序来帮助更好地理解它。我尝试使用
.random
在这两个字符串之间进行选择,但它不起作用,并且给出了一个很长的错误。以下是迄今为止的代码:

fun main() {
val coinSide = Coin()   
    println("You flipped a ${coinSide}")
​
​
}
​
class Coin (){
    
    fun flip() : String {
        val head = ("Heads")
        val tails = ("Tails")
        return (head..tails).random()
    }    
}

您的代码有很多问题,random()不是(String..String)的函数。实际上,您从未调用flip()。你是在印硬币,不是在印线

试试这个:

fun main() {
    val coinSide = Coin()
    println("You flipped a ${coinSide.flip()}")
}

class Coin {
    fun flip() : String {
        val head = "Heads"
        val tails = "Tails"
        return listOf(head, tails).random()
    }
}
那就是保持你的风格。 该代码可以简化为:

fun main() = println("You flipped a ${Coin().flip()}")

class Coin {
    fun flip() = listOf("Heads", "Tails").random()
}

当您收到错误时,请包含该错误。随机是数组上的函数吗?你构造了一个数组吗?一系列的“正面”…“反面”意味着什么?这很有效!附带问题,.flip()部分的println语句是如何工作的?它只是调用硬币上的flip函数。Kotlin有一个称为字符串插值的功能。字符串“You flipped a${coinSide.flip()}”相当于“You flipped a”+coinSide.flip()