首页 > 解决方案 > 是否可以声明关闭的返回类型?

问题描述

我正在学习scala编程语言的闭包。

例如:

val a = (x:Int, y:Int) => x + y;
a(1, 2)

会给我3。闭包a像函数一样工作(Int, Int):Int

是否可以像这样声明闭包的返回类型?

val a = (x:Int, y:Int):Int => x + y;
a(1, 2)

可能吗 ?

标签: scalaclosures

解决方案


这种语法是不可能的 ( val a = (x:Int, y:Int):Int => x + y),但您可以为 声明类型a

val a: (Int, Int) => Int = (x, y) => x + y


推荐阅读