Scala:如何制作多种方法并逐一应用它们?

时间:2018-04-27 00:38:38

标签: scala list functional-programming

Scala:如何制作多种方法并逐一应用它们?

我有一个列表:List("1", "2", "3")

和方法:

def concat(str: String)(tail: String): String = str + tail

我的目标是制作三种(想象的)方法:

concat(str: String)("1")
concat(str: String)("2")
concat(str: String)("3")

然后将这三种方法逐个应用于测试字符串“abc”: 然后我会得到结果:"abc123"

这样做的功能方法是什么?任何提示都表示赞赏。

1 个答案:

答案 0 :(得分:4)

您不需要3种不同的方法。只需使用QMenu* menu = new QMenu(); QAction* newFile = new QAction; newFile->setText("New File"); menu->addAction(newFile); 遍历您的列表并连续应用adaptIntegrate(function(x) {x[1]*x[2]}, lowerLimit = c(0,0), upperLimit = c(x[2],1))$integral 方法:

fold

请注意,concat只是以下的快捷方式:

val list = List("1", "2", "3")

def concat(str: String)(tail: String): String = str + tail

list.fold( "abc" )( concat(_)(_) )
// res1: String = abc123

如果您不熟悉fold( "abc" )( concat(_)(_) ),请访问API doc