如何在 Kotlin 中使用 when 语句?
How to use when statement in Kotlin?
我知道我尝试完成的方法并不是完美的方法。我尝试使用 when
语句,但我做不到。如何使用 when
语句而不是 if...else
转换我的代码?哪个选项最适合在这种情况下使用?
if(stock>10.toBigDecimal()){
holder.itemView.tv_dashboard_item_stock.text = "In Stock"
}else if(stock>5.toBigDecimal()){
holder.itemView.tv_dashboard_item_stock.text = "Only $stock left"
}else{
holder.itemView.tv_dashboard_item_stock.setTextColor(Color.MAGENTA)
holder.itemView.tv_dashboard_item_stock.text = "Enquire"
holder.itemView.tv_dashboard_item_stock.setOnClickListener {
Toast.makeText(context,"You clicked",Toast.LENGTH_LONG).show()
}
}
when {
stock > 10.toBigDecimal() -> holder.itemView.tv_dashboard_item_stock.text = "In Stock"
stock > 5.toBigDecimal() -> holder.itemView.tv_dashboard_item_stock.text = "Only $stock left"
else -> {
holder.itemView.tv_dashboard_item_stock.setTextColor(Color.MAGENTA)
holder.itemView.tv_dashboard_item_stock.text = "Enquire"
holder.itemView.tv_dashboard_item_stock.setOnClickListener {
Toast.makeText(context,"You clicked",Toast.LENGTH_LONG).show()
}
}
}
https://kotlinlang.org/docs/control-flow.html#when-expression
我知道我尝试完成的方法并不是完美的方法。我尝试使用 when
语句,但我做不到。如何使用 when
语句而不是 if...else
转换我的代码?哪个选项最适合在这种情况下使用?
if(stock>10.toBigDecimal()){
holder.itemView.tv_dashboard_item_stock.text = "In Stock"
}else if(stock>5.toBigDecimal()){
holder.itemView.tv_dashboard_item_stock.text = "Only $stock left"
}else{
holder.itemView.tv_dashboard_item_stock.setTextColor(Color.MAGENTA)
holder.itemView.tv_dashboard_item_stock.text = "Enquire"
holder.itemView.tv_dashboard_item_stock.setOnClickListener {
Toast.makeText(context,"You clicked",Toast.LENGTH_LONG).show()
}
}
when {
stock > 10.toBigDecimal() -> holder.itemView.tv_dashboard_item_stock.text = "In Stock"
stock > 5.toBigDecimal() -> holder.itemView.tv_dashboard_item_stock.text = "Only $stock left"
else -> {
holder.itemView.tv_dashboard_item_stock.setTextColor(Color.MAGENTA)
holder.itemView.tv_dashboard_item_stock.text = "Enquire"
holder.itemView.tv_dashboard_item_stock.setOnClickListener {
Toast.makeText(context,"You clicked",Toast.LENGTH_LONG).show()
}
}
}
https://kotlinlang.org/docs/control-flow.html#when-expression