第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

流式傳輸和過濾 SortedMap

流式傳輸和過濾 SortedMap

白衣非少年 2023-10-13 17:25:41
我確信這很簡單,但由于某種原因我沒有得到我想要的。我有一個SortedMap<String, String>值,我想對其進(jìn)行流式傳輸和過濾并僅保存一些值。例如:    SortedMap<String, String> input = new TreeMap<>();    values.put("accepted.animal", "dog");    values.put("accepted.bird", "owl");    values.put("accepted.food", "broccoli");    values.put("rejected.animal", "cat");    values.put("rejected.bird", "eagle");    values.put("rejected.food", "meat");我只想保留密鑰中包含“accepted”的值并刪除其他所有內(nèi)容。所以,結(jié)果將是:{accepted.animal=dog, accepted.bird=owl, accepted.food=broccoli}如何流式傳輸?shù)貓D并過濾掉除包含“已接受”的鍵之外的所有內(nèi)容?這是我嘗試過的:private SortedMap<String, String> process(final Input input) {    final SortedMap<String, String> results = new TreeMap<>();    return input.getInputParams()                .entrySet()                .stream()                .filter(params -> params.getKey().contains("accepted"))                .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));} 但由于“無法從靜態(tài)上下文引用非靜態(tài)方法”而失敗。
查看完整描述

2 回答

?
一只甜甜圈

TA貢獻(xiàn)1836條經(jīng)驗 獲得超5個贊

您需要使用另一種變體Collectors.toMap,以便傳遞合并函數(shù)和供應(yīng)商以在TreeMap那里收集:

return?input.getInputParams()
????????.entrySet()
????????.stream()
????????.filter(params?->?params.getKey().startsWith("accepted"))?//?small?change
????????.collect(Collectors.toMap(Map.Entry::getKey,?Map.Entry::getValue,
????????????????(a,?b)?->?b,?TreeMap::new));


查看完整回答
反對 回復(fù) 2023-10-13
?
慕哥9229398

TA貢獻(xiàn)1877條經(jīng)驗 獲得超6個贊

最終,該方法不會編譯,因為Collectors.toMap()返回Map,而方法簽名需要返回類型為SortedMap。


我不知道誤導(dǎo)性的“靜態(tài)上下文”錯誤消息背后的原因;但是當(dāng)我嘗試使用 Gradle 構(gòu)建代碼時,我收到了一條稍微有用的消息。


error: incompatible types: inference variable R has incompatible bounds

                  .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));

                          ^

      equality constraints: Map<K,U>

      lower bounds: SortedMap<String,String>,Object


Collectors.toMap()您可能需要接受 a的重載版本Supplier<Map>,以便您可以提供SortedMapfor 輸出。


查看完整回答
反對 回復(fù) 2023-10-13
  • 2 回答
  • 0 關(guān)注
  • 129 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號