【发布时间】:2019-11-14 05:41:36
【问题描述】:
我想检查 String 中的每个元素是否都是数字。首先,我通过正则表达式 [, ]+ 表达式将字符串拆分为数组,然后尝试通过 forall 和 isDigit 检查每个元素。
object Test extends App {
val st = "1, 434, 634, 8"
st.split("[ ,]+") match {
case arr if !arr.forall(_.forall(_.isDigit)) => println("not an array")
case arr if arr.isEmpty => println("bad delimiter")
case _ => println("success")
}
}
如何改进此代码和!arr.forall(_.forall(_.isDigit))?
【问题讨论】:
-
split返回的数组永远不会为空。 -
如果你传递字符串
1 2 3, 123应该是什么答案?improve this code是什么意思?