我们说我有这个方法
def mapFunction(): StructType = {
val elements: List = List(1, 2, 3)
StructType(elements map function)
}
其中的功能是
def function(listEle: Int): StructField = {
// doesn't matter what happens here
}
此代码有效。
我如何致电"功能"如果我添加更多参数? e.g。
def function(listEle: Int, anotherParam1: Int, anotherParam2: Int): StructField = {
//
}
我试过
def mapFunction(): StructType = {
val elements: List = List(1, 2, 3)
StructType(elements map function(4, 5))
}
但它抱怨该方法缺少参数bc函数需要3个输入。但是,我想保持这种方式调用"元素映射函数"返回StructType。
答案 0 :(得分:3)
有很多方法可以做到这一点,但最接近你的例子的是;
def mapFunction(): StructType = {
val elements: List = List(1, 2, 3)
StructType(elements.map(function(_, 4, 5)))
}
答案 1 :(得分:0)
您在第一个示例中执行的操作是隐式将 android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintDimensionRatio="2:1"
提供的回调参数传递给您的map
回调。
如果您使用以下表格撰写,您可以轻松了解如何达到预期效果:
function
更改了更多参数的代码:
def mapFunction(): StructType = {
val elements = Seq(1, 2, 3)
StructType(elements.map(element => function(element)))
}
其他例子:
def mapFunction(): StructType = {
val elements = Seq((1, 11, 111), (2, 22, 222), (3, 33, 333))
StructType(elements.map(element => function(element._1, element._2, element._3)))
}