gpt4 book ai didi

list - 为什么这个列表意味着它在 scala 中还有 3 或 3 个以上的元素

转载 作者:行者123 更新时间:2023-12-02 07:48:00 24 4
gpt4 key购买 nike

为什么这个列表意味着它在 scala 中还有 3 或 3 个元素

x::y::List(xs::ys)::zs

x、y 或 ys、zs 可以为空吗?根据老师的说法,为什么它必须是一个至少 3 个元素的列表

谢谢!

最佳答案

让我们为这个表达式提供一些上下文,使类型变得明确。

def foo[A](
x: List[List[A]],
y: List[List[A]],
xs: A,
ys: List[A],
zs: List[List[List[A]]]
): List[List[List[A]]] =
x::y::List(xs::ys)::zs

按照惯例,如果您有标识符 xxs,那么 xs 将具有集合类型(例如 List[A] )和 x 将是集合的元素类型(例如 A)。这里的情况并非如此,所以我认为你的老师通过错误地命名变量使这变得不必要的困难。

现在,例如,让我们使用尽可能少的值来调用 foo:

> foo(Nil, Nil, 1, Nil, Nil)
res: List[List[List[Int]]] = List(List(), List(), List(List(1)))

关于list - 为什么这个列表意味着它在 scala 中还有 3 或 3 个以上的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26249900/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com