加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Typedef在Scala

发布时间:2020-12-16 09:33:33 所属栏目:安全 来源:网络整理
导读:如何在Scala中定义类型? 喜欢 type MySparseVector = [(Int,Double)] 在Haskell或 typedef MySparseVector = std::liststd::pair(int,double) 在C? 我试过了 type MySparseVector = List((Int,Double)) 但不能说明如何使其工作。如果我在类文件的开始写这
如何在Scala中定义类型?
喜欢

type MySparseVector = [(Int,Double)]

在Haskell或

typedef MySparseVector = std::list<std::pair(int,double)>>

在C?

我试过了

type MySparseVector = List((Int,Double))

但不能说明如何使其工作。如果我在类文件的开始写这个,我得到了“预期的类或对象定义”错误。

对不起,我错了。我试图在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
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读