gpt4 book ai didi

scala - 初学者:Scala 2.10中的Scala类型别名?

转载 作者:行者123 更新时间:2023-12-03 15:06:41 25 4
gpt4 key购买 nike

为什么此代码无法编译并显示错误:找不到:值矩阵?从文档和一些(可能是过时的)代码示例中,这应该工作吗?

object TestMatrix extends App{  
type Row = List[Int]
type Matrix = List[Row]


val m = Matrix( Row(1,2,3),
Row(1,2,3),
Row(1,2,3)
)


}

最佳答案

Matrix表示一种类型,但是您将其用作值。

执行List(1, 2, 3)时,实际上是在调用List.apply,这是List的工厂方法。

要解决您的编译错误,您可以为MatrixRow定义自己的工厂:

object TestMatrix extends App{  
type Row = List[Int]
def Row(xs: Int*) = List(xs: _*)

type Matrix = List[Row]
def Matrix(xs: Row*) = List(xs: _*)

val m = Matrix( Row(1,2,3),
Row(1,2,3),
Row(1,2,3)
)
}

关于scala - 初学者:Scala 2.10中的Scala类型别名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15783837/

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