在使用例如Iterable
接口时,似乎使用元组形式。然而,Map
类型的构造函数需要两个类型参数,而Iterable
只需要一个(一个2元组)。如何使用Map([K,V])而不是Map [K,V]创建Map构造函数?
总之,我想要做的事情如:type Map[(+A, +B)] = Map[A, B]
,但这是无效的Scala代码。然后我会说:
type MapItem = (K,V)
type MyMap = Map[MapItem]
的例子使用情况下,我有当前是我的功能定义如下:
def requestDecodeIterable[B, I[X] <: Iterable[X]](reqRx: Rx[HttpRequest])
(implicit stuff ...): Rx[I[B]] = ...
我希望能够调用它像这样:
type CodebookNameItem = (CodebookId, CodebookName)
type CodebookNameCollection[+A, +B] = Map[A, B]
requestDecodeIterable[CodebookNameItem, CodebookNameCollection](request)
但是,这当然不起作用,因为CodebookNameCollection
需要两个类型参数,但I
只需要一个类型参数。
你能说明一下这种情况吗? –
@IonuţG.Stan - 当然,我更新了我的问题。 – bbarker