我不知道如何修复此代码。它在 returnFirstString 的某处“爆炸”,但我不知道为什么。此外,我不知道如何使用 println 正确显示结果。这种做法是否正确。
所以这是代码:
def returnFirstString(a: Array[String]): Option[String]=
{
if(a.isEmpty) { None }
Some(a(0))
}
val emptyArrayOfStrings = Array.empty[String]
println(returnFirstString(emptyArrayOfStrings))
答案 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