在使用例如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