begegne mir das, wenn ich Code lese von Apache-Funken:
val alpha = new DoubleParam(this, "alpha", "alpha for implicit preference",
ParamValidators.gtEq(0))
/** @group getParam */
def getAlpha: Double = $(alpha)
Ich habe für eine lange Zeit im Web gesucht, aber immer noch nicht gut erklären, was hier bedeutet finden $(alpha)
? Wie kann es eine selbstdefinierte Klasse DoubleParam
Variable zu Double
zuweisen? Vielen Dank!!
FYI, The DoubleParam
Klasse ist folgendermaßen definiert:
class DoubleParam(parent: String, name: String, doc: String, isValid: Double => Boolean)
extends Param[Double](parent, name, doc, isValid) {
def this(parent: String, name: String, doc: String) =
this(parent, name, doc, ParamValidators.alwaysTrue)
def this(parent: Identifiable, name: String, doc: String, isValid: Double => Boolean) =
this(parent.uid, name, doc, isValid)
def this(parent: Identifiable, name: String, doc: String) = this(parent.uid, name, doc)
/** Creates a param pair with the given value (for Java). */
override def w(value: Double): ParamPair[Double] = super.w(value)
}
Bitte den Link überprüfen, die scala Symbole definiert: http://docs.scala-lang.org/tutorials/FAQ/finding-symbols.html –
@RahulGopi in der Tat hat es nichts mit Scala an sich. Es ist Syntax von 3rd-Party-Bibliothek eingeführt, wahrscheinlich von Spark –
@ Om-Nom-Nom Ich tatsächlich angenommen, diese FAQ würde es erklären und beschreiben, wie man in Scaladoc nach solchen Methoden suchen, aber es nicht tut. –