Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 将元素累积到列表中第n个元素之前_Scala - Fatal编程技术网

Scala 将元素累积到列表中第n个元素之前

Scala 将元素累积到列表中第n个元素之前,scala,Scala,我想创建一个从n+1到n.length的列表,其中n是传递给函数的值 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”,我将得到一个空列表 预期输出=列表(“30,40,50”)换句话说,您希望从列表中删除第一

我想创建一个从n+1到n.length的列表,其中n是传递给函数的值

    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”
,我将得到一个空列表


预期输出=
列表(“30,40,50”)
换句话说,您希望从列表中删除第一个
n
值。为此,您可以使用
drop

list.drop(n)
list.dropWhile(_ != "12").drop(1)
如果要根据条件删除值,请使用
dropWhile

list.dropWhile(_ != "30")
要排除匹配元素,请使用另一个
下拉列表

list.drop(n)
list.dropWhile(_ != "12").drop(1)

[如注释中所述,如果找不到元素,使用
tail
可能会导致异常]

换句话说,您希望从列表中删除第一个
n
值。为此,您可以使用
drop

list.drop(n)
list.dropWhile(_ != "12").drop(1)
如果要根据条件删除值,请使用
dropWhile

list.dropWhile(_ != "30")
要排除匹配元素,请使用另一个
下拉列表

list.drop(n)
list.dropWhile(_ != "12").drop(1)

[如注释中所述,如果未找到元素,使用
tail
可能导致异常]

您的预期输出的输入是什么?2.还是3?什么是长度?您的意思是
list.length
?预期输出的输入是什么?2.还是3?什么是长度?您的意思是
list.length
?如果
“12”
是最后一个元素,您的最后一个表达式将抛出。我猜你的意思是
list.dropWhile(!=“12”).tailOpt.getOrElse(Nil)
如果最后一个元素返回list(),他想在元素之前删除元素,包括他传递的字符串,但他没有传递要删除的值的数量
drop
函数接受一个
Int
参数,但他正在传递一个特定的字符串值
,之后他希望保留所有元素并删除所有元素,然后再包含传递的元素。
列表。dropWhile(!=“12”).tail
仅适用。是。。tail可能会导致异常。现在添加drop(1)后应该可以了。如果
“12”
是最后一个元素,则最后一个表达式将抛出。我猜你的意思是
list.dropWhile(!=“12”).tailOpt.getOrElse(Nil)
如果最后一个元素返回list(),他想在元素之前删除元素,包括他传递的字符串,但他没有传递要删除的值的数量
drop
函数接受一个
Int
参数,但他正在传递一个特定的字符串值
,之后他希望保留所有元素并删除所有元素,然后再包含传递的元素。
列表。dropWhile(!=“12”).tail
仅适用。是。。tail可能会导致异常。现在添加drop(1)后应该可以了。