<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 閱讀(200) 評論(0)  編輯  收藏

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


    網站導航:
     
    主站蜘蛛池模板: 国产精品国产亚洲区艳妇糸列短篇| 亚洲卡一卡2卡三卡4卡无卡三| 亚洲人精品亚洲人成在线| 久久久99精品免费观看| 亚洲AV无码一区二区三区DV | 日日狠狠久久偷偷色综合免费 | 亚洲欧美不卡高清在线| 成人黄软件网18免费下载成人黄18免费视频| 亚洲最大视频网站| 免费做爰猛烈吃奶摸视频在线观看| 亚洲成a人片在线观看播放| 成人免费AA片在线观看| 中文字幕无码亚洲欧洲日韩| 日本免费一区二区三区最新| 国产精品亚洲五月天高清| 国产亚洲成人久久| 免费视频成人片在线观看| 亚洲人成在久久综合网站| 在线免费观看一级毛片| 免费的黄色网页在线免费观看| 亚洲中文久久精品无码ww16| 午夜影院免费观看| 亚洲AV色吊丝无码| 全黄a免费一级毛片人人爱| igao激情在线视频免费| 亚洲激情在线观看| 久久不见久久见免费影院| 日韩一级片免费观看| 亚洲国产天堂在线观看| 99在线精品免费视频九九视| 香蕉视频亚洲一级| 久久精品亚洲一区二区| 人成午夜免费视频在线观看| 免费播放美女一级毛片| 久久夜色精品国产亚洲AV动态图| 成人黄软件网18免费下载成人黄18免费视频| 无码AV动漫精品一区二区免费| 91在线亚洲精品专区| 国产gav成人免费播放视频| 毛片在线播放免费观看| 亚洲精品又粗又大又爽A片|