相关疑难解决方法(0)

Scala:构造函数采用Seq或varargs

我猜测,出于兼容性原因,vararg参数的类型Any*是Array [Any] - 如果我错了,请更正.但是,这并不能解释以下错误:

class Api(api_url: String, params: Seq[(String, String)]) {
  def this(api_url: String, params: (String, String)*)
    = this(api_url, params.seq)
}
Run Code Online (Sandbox Code Playgroud)

此代码无法编译,但会发出警告:

double definition:构造函数Api:(api_url:String,params:(String,String)*)Api和构造函数Api:(api_url:String,params:Seq [(String,String)])第13行的Api在擦除后具有相同的类型:(api_url:java.lang.String,params:Seq)Api

那么如何定义一个采用varargs或序列的构造函数呢?

constructor types scala variadic-functions

20
推荐指数
2
解决办法
1万
查看次数

Scala AnyRef.clone执行浅或深拷贝吗?

在Scala中,是AnyRef.clone执行浅或深拷贝?

clone scala

13
推荐指数
1
解决办法
6001
查看次数

标签 统计

scala ×2

clone ×1

constructor ×1

types ×1

variadic-functions ×1