我想创建一个从第n + 1个值到n.length的列表,其中n是传递给函数的值
statusRequestSource
如果传递了“ def test(n:String) ={
val list = List("1","12","30","40","50")
list match{
case s::rest if s==n => Seq(rest).flatten
case _ => Nil
}
}
,我将得到一个空列表。
预期输出= 12"
答案 0 :(得分:2)
以另一种方式输入,您想要从列表中删除前n
个值。为此,您使用drop
:
list.drop(n)
如果要基于条件删除值,请使用dropWhile
:
list.dropWhile(_ != "30")
要排除匹配的元素,请使用另一个drop
:
list.dropWhile(_ != "12").drop(1)
[如评论中所述,如果找不到元素,则使用tail
可能会导致异常]