Scala 导入库通配符
scala import library wildcard
我是 Scala 新手。请温柔点
下面的导入导入了 ml.
下的所有内容(每个 class、特征和对象)
import org.apache.spark.ml._
但不是
下的 ParamMap
import org.apache.spark.ml.param._
换句话说,对于下面的代码,如果我这样做:
import org.apache.spark.ml.param._
import org.apache.spark.ml._
class Kmeans extends Transformer {
def copy(extra: ParamMap): Unit = {
defaultCopy(extra)
}}
那么我没有导入错误,但是如果我评论 import org.apache.spark.ml.param._
:
//import org.apache.spark.ml.param._
import org.apache.spark.ml._
class Kmeans extends Transformer {
def copy(extra: ParamMap): Unit = {
defaultCopy(extra)
}}
ParamMap 导入错误。
Question
为什么不包含这个 import org.apache.spark.ml.param.ParamMap
import org.apache.spark.ml.param._
Scala 导入不是递归的 - import org.apache.spark.ml._
意味着导入所有 classes 和字段 directly 在 ml
包下而不是下面的那些它的子包。
由于 ParamMap
在 ml
的子包之一 (ml.param
) 下,您必须导入该包或 ParamMap
class 直接。
我是 Scala 新手。请温柔点
下面的导入导入了 ml.
下的所有内容(每个 class、特征和对象)import org.apache.spark.ml._
但不是
下的 ParamMapimport org.apache.spark.ml.param._
换句话说,对于下面的代码,如果我这样做:
import org.apache.spark.ml.param._
import org.apache.spark.ml._
class Kmeans extends Transformer {
def copy(extra: ParamMap): Unit = {
defaultCopy(extra)
}}
那么我没有导入错误,但是如果我评论 import org.apache.spark.ml.param._
:
//import org.apache.spark.ml.param._
import org.apache.spark.ml._
class Kmeans extends Transformer {
def copy(extra: ParamMap): Unit = {
defaultCopy(extra)
}}
ParamMap 导入错误。
Question
为什么不包含这个 import org.apache.spark.ml.param.ParamMap
import org.apache.spark.ml.param._
Scala 导入不是递归的 - import org.apache.spark.ml._
意味着导入所有 classes 和字段 directly 在 ml
包下而不是下面的那些它的子包。
由于 ParamMap
在 ml
的子包之一 (ml.param
) 下,您必须导入该包或 ParamMap
class 直接。