首页 > 解决方案 > Scala:seq.size 与模式匹配

问题描述

我必须根据 Seq 的大小做出决定。

所以,我可以这样做:

if(mySeq.size() > 0) // do your stuff

或者,我可以这样做:

mySeq match {
  case x :: _ => // do your stuff
}

我应该更喜欢哪一个?

标签: scalaif-statementfunctional-programmingpattern-matching

解决方案


如果您的检查是否正好是大小 > 0,我更喜欢

if (mySeq.nonEmpty) { .. }

这个解决方案没有性能损失,适用于所有版本的 scala。在我看来nonEmpty 比尺寸检查更直观。


推荐阅读