如何在 Scala 中定义类型?
喜欢
type MySparseVector = [(Int, Double)]
在哈斯克尔或
typedef MySparseVector = std::list<std::pair(int, double)>>
in C++?
I tried
type MySparseVector = List((Int, Double))
但不知道如何让它发挥作用。如果我在类文件的开头写入此内容,则会收到“预期的类或对象定义”错误。
PS 抱歉,我打错了。我尝试在 Scala 中使用 List[(Int, Double)] 。
type MySparseVector = List[(Int, Double)]
用法示例:
val l: MySparseVector = List((1, 1.1), (2, 2.2))
类型必须在类或对象内部定义。您可以稍后导入它们。您还可以在包对象中定义它们 - 在同一包中不需要导入,并且您仍然可以将它们导入到其他包中。例子:
// file: mypackage.scala
package object mypackage {
type MySparseVector = List[(Int, Double)]
}
//in the same directory:
package mypackage
// no import required
class Something {
val l: MySparseVector = Nil
}
// in some other directory and package:
package otherpackage
import mypackage._
class SomethingElse {
val l: MySparseVector = Nil
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)