gpt4 book ai didi

arrays - 为什么 map/filter ... 不适用于无数组?

转载 作者:行者123 更新时间:2023-12-01 07:16:07 25 4
gpt4 key购买 nike

不是 Nothing 是所有类型的子类型吗?

scala> val array = new Array(5)
array: Array[Nothing] = Array(null, null, null, null, null)

scala> array.map(_ => 42)
<console>:9: error: value map is not a member of Array[Nothing]
array.map(_ => 42)
^

scala> array.filter(_ != 42)
<console>:9: error: value filter is not a member of Array[Nothing]
array.filter(_ != 42)
^

奇怪的是这不起作用。

这是指定的,功能还是错误?

最佳答案

当您看到涉及 Nothing 的奇怪行为时,这是因为类型推断算法认为它自己插入了 Nothing,因为它是在类型推断期间引入的:如果对类型变量一无所知,则它受 Any 和 Nothing 的约束。长期以来,我一直在做的事情 list 上,看看我是否可以为此目的引入一个新的仅限内部使用的底部类型,这样用户级的 Nothing 和推理级的 Nothing 就不会混合在一起,但这是一项非常雄心勃勃的任务。尽管如此,我现在可能已经足够铁杆去尝试了。

关于arrays - 为什么 map/filter ... 不适用于无数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5843001/

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