Kotlin如何判断服务器返回的字符串是整数还是带小数点的数值
补全后的代码实现
你只需要判断字符串是否包含.字符即可,注意Kotlin里要做好空安全处理,避免字段为null时空指针崩溃:
// 判断逻辑:discounted_price不为null且包含小数点就走if分支,否则走else补.00后缀 if(product[position].discounted_price?.contains('.') == true) { mrp.text = "₹" + product.get(position).price mrp.paintFlags = Paint.STRIKE_THRU_TEXT_FLAG sellingprice.text = "₹" + product.get(position).discounted_price tv_cartvariant.text = variant.cart_count.toString() } else { mrp.text = "₹" + product.get(position).price + ".00" mrp.paintFlags = Paint.STRIKE_THRU_TEXT_FLAG sellingprice.text = "₹" + product.get(position).discounted_price + ".00" tv_cartvariant.text = variant.cart_count.toString() }
逻辑说明
- 用
?.安全调用符处理discounted_price可能为null的场景 - 当
discounted_price为null、或者不包含.字符时,都会走到else分支自动补.00后缀,符合你的展示需求 - 如果你的
discounted_price是Number类型而非String类型,先转成字符串再判断即可:product[position].discounted_price.toString().contains('.')
内容的提问来源于stack exchange,提问作者SasidharanIOS
相关产品推荐
相关产品推荐

