<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 100  文章 - 50  trackbacks - 0
    <2018年3月>
    25262728123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(3)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    收藏夾

    我收藏的一些文章!

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    常用方式

    代碼如下:

    public Map<Long, String> getIdNameMap(List<Account> accounts) {     return accounts.stream().collect(Collectors.toMap(Account::getId, Account::getUsername)); } 

    收集成實體本身map

    代碼如下:

    public Map<Long, Account> getIdAccountMap(List<Account> accounts) {     return accounts.stream().collect(Collectors.toMap(Account::getId, account -> account)); } 

    account -> account是一個返回本身的lambda表達式,其實還可以使用Function接口中的一個默認方法代替,使整個方法更簡潔優雅:

    public Map<Long, Account> getIdAccountMap(List<Account> accounts) {     return accounts.stream().collect(Collectors.toMap(Account::getId, Function.identity())); } 

    重復key的情況

    代碼如下:

    public Map<String, Account> getNameAccountMap(List<Account> accounts) {     return accounts.stream().collect(Collectors.toMap(Account::getUsername, Function.identity())); } 

    這個方法可能報錯(java.lang.IllegalStateException: Duplicate key),因為name是有可能重復的。toMap有個重載方法,可以傳入一個合并的函數來解決key沖突問題:

    public Map<String, Account> getNameAccountMap(List<Account> accounts) {     return accounts.stream().collect(Collectors.toMap(Account::getUsername, Function.identity(), (key1, key2) -> key2)); } 

    這里只是簡單的使用后者覆蓋前者來解決key重復問題。

    指定具體收集的map

    toMap還有另一個重載方法,可以指定一個Map的具體實現,來收集數據:

    public Map<String, Account> getNameAccountMap(List<Account> accounts) {     return accounts.stream().collect(Collectors.toMap(Account::getUsername, Function.identity(), (key1, key2) -> key2, LinkedHashMap::new)); } 
     
    轉自:https://zacard.net/2016/03/17/java8-list-to-map/
    posted on 2018-03-31 20:22 fly 閱讀(199) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 久99久精品免费视频热77| 青娱乐在线免费观看视频| 国内精品免费视频精选在线观看| 国产成人青青热久免费精品| 亚洲狠狠婷婷综合久久| 麻豆国产精品入口免费观看| 亚洲av永久无码精品网址| 无码免费午夜福利片在线| 亚洲乱人伦中文字幕无码| 日本大片在线看黄a∨免费| 朝桐光亚洲专区在线中文字幕| 国产在线ts人妖免费视频| 国产成人高清亚洲一区91| 亚洲日本中文字幕一区二区三区 | 婷婷综合缴情亚洲狠狠尤物| 美女黄色免费网站| 自拍偷自拍亚洲精品被多人伦好爽| eeuss免费天堂影院| 久久亚洲精品AB无码播放| 国产电影午夜成年免费视频| 亚洲情A成黄在线观看动漫软件| 日韩免费a级在线观看| 岛国精品一区免费视频在线观看| 亚洲av无码片在线播放| 国产精品免费精品自在线观看| 亚洲色大成WWW亚洲女子| 亚洲福利精品一区二区三区| 中文在线免费看视频| 亚洲国产视频一区| 国产成人精品免费视频大全五级| 国产免费黄色无码视频| 亚洲综合久久成人69| 午夜国产大片免费观看| 久久精品成人免费网站| 亚洲风情亚Aⅴ在线发布| 最新国产AV无码专区亚洲| 思思re热免费精品视频66| 免费精品久久久久久中文字幕| 亚洲国产一区二区三区青草影视| 国产精品成人免费视频网站京东| 一道本在线免费视频|