1

How can I convert the following code from if expression to when by using Kotlin?

Actually i'm using 2 adapters inside my Activity and i got problem will converting if expression to when, any solution?

Here is my code

    var ADAPTER_TYPE_1=adapter1
    var ADAPTER_TYPE_2=adapter2

   if(ADAPTER_TYPE_1 ==lvFoods2.adapter) {
       ADAPTER_TYPE_1 = FoodAdapter(listOfFoods2, this)
       lvFoods2.adapter = ADAPTER_TYPE_1
    } else if (ADAPTER_TYPE_2==lvFoods2.adapter) {
       ADAPTER_TYPE_2 = FoodAdapter2(listOfFoods3, this)
       lvFoods2.adapter = ADAPTER_TYPE_2
     }

1 Answer 1

3

Something like this:

var adapterType1 = adapter1
var adapterType2 = adapter2

lvFoods2.adapter = when (lvFoods2.adapter) {
    adapterType1 -> FoodAdapter(listOfFoods2, this).also { adapterType1 = it }
    adapterType2 -> FoodAdapter2(listOfFoods3, this).also { adapterType2 = it }
    else -> lvFoods2.adapter
}
Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.