简单的scala代码:从字符串数组返回第一个元素

时间:2013-02-25 19:11:49

标签: scala

我不知道如何修复此代码。它在 returnFirstString 的某处“爆炸”,但我不知道为什么。此外,我不知道如何使用 println 正确显示结果。这种做法是否正确。

所以这是代码:

def returnFirstString(a: Array[String]): Option[String]=
{
    if(a.isEmpty) { None }
    Some(a(0))
}
val emptyArrayOfStrings = Array.empty[String]
println(returnFirstString(emptyArrayOfStrings))

2 个答案:

答案 0 :(得分:11)

你没有正确地返回无:

  def returnFirstString(a: Array[String]): Option[String] = {
    if (a.isEmpty) {
      None
    }
    else {
      Some(a(0))
    }
  }

此外,在大多数scala集合中已有一种方法:

emptyArrayOfStrings.headOption

答案 1 :(得分:4)

最简洁的方式:

def returnFirstString(a: Array[String]): Option[String]= a.headOption