-1
我有一個像下面的lambda表達式。我想問的是鑄造方法參數有沒有簡單的方法或最佳做法?如何投射lambda方法參數?
results.forEach(
(result) ->
{
((JSONObject)result).put("test", "test");
((JSONObject)result).put("time", System.currentTimeMillis());
otherList.add(((JSONObject)result));
}
);
當我試圖改變輸入型像
(JSONObject result) ->
我得到下面的錯誤;
incompatible types: Consumer<JSONObject> cannot be converted to Consumer<? super Object>
由於有消息稱,這些類型不兼容。爲什麼不引入一個局部變量? –
@OliverCharlesworth起初我認爲(創建一個新的局部變量)但是如果我有5-6個輸入呢?我是否需要爲它們創建一個新的變量? – hellzone
這個問題不是lambda表達式的唯一 - 它適用於任何方法。 (也就是說,如果你有5-6輸入的拉姆達,奇怪的事情大概是怎麼回事!) –