【发布时间】:2012-06-03 06:11:49
【问题描述】:
我想我还没有完全理解函数定义过程中type()代表什么。所以我无法提出每种情况的具体例子: () => Int;单位=> 整数。
谁能给我一个简单的函数文字示例,分别是 () => Int 和 Unit=>Int 类型?在那之后,我想我可以了解 () 到底是什么。
谢谢
*编辑:* destin 说它们是一样的。但以下测试似乎表明并非如此: () 不能用于期望 Unit.
scala> def inCase[A] ( b :Boolean, ifTrue : Unit => A, ifFalse : Unit => A ) : A =
| b match {
| case True => ifTrue()
| case _ => ifFalse()
| }
inCase: [A](b: Boolean, ifTrue: Unit => A, ifFalse: Unit => A)A
scala> inCase( True, () => 1, () => -1 )
<console>:11: error: type mismatch;
found : () => Int
required: Unit => ?
inCase( True, () => 1, () => -1 )
【问题讨论】:
-
您在寻找 int 或 Unit 的返回类型吗?听起来很像,但我想确定。
-
我正在寻找 Int 的返回类型。
标签: scala