如何避免在 Kotlin 中使用太多“if”?

问题描述 投票:0回答:1

我想创建一个猜词游戏,这些单词会有答案。我怎样才能控制随机单词的含义而不是这个?

val list = listOf("one", "two", "three", "four", "five")
val key = listOf("onek", "twok", "threek", "fourk", "fivek")
if(binding.randomWord.text == list[0]) {

    binding.wordMeaning.text = key[0]
}

if(binding.randomWord.text == list[1]) {

    binding.wordMeaning.text = key[1]
}

if(binding.randomWord.text == list[2]) {

    binding.wordMeaning.text = key[2]
}

if(binding.randomWord.text == list[3]) {

    binding.wordMeaning.text = key[3]
}

if(binding.randomWord.text == list[4]) {

    binding.wordMeaning.text = key[4]
}

我想学习这个方法的另一种方式。

android kotlin mobile
1个回答
0
投票

您可以使用

for
循环。在 Kotlin 中,它会是这样的:

for (idx in list.indices) {
    
    if(binding.randomWord.text == list[idx]) {
        binding.wordMeaning.text = key[idx]
    }
}

只需确保数组的长度始终相同,否则会得到错误的结果。

© www.soinside.com 2019 - 2024. All rights reserved.