麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > Java > 正文

在Java 8中將List轉換為Map對象方法

2024-07-14 08:42:50
字體:
來源:轉載
供稿:網友

假設有一個員工對象:

<b>public</b> <b>class</b> Employee {  <font><i>// member variables</i></font><font>  <b>private</b> <b>int</b> empId;  <b>private</b> String empName;  <b>private</b> <b>int</b> empAge;  <b>private</b> String empDesignation;</font>

將這個員工對象放入LIst集合,如何轉為Map? 首先要明確Map的key是什么?

1. 比如式樣員工對象的empId作為key,值是員工姓名:

 <font><i>// convert List<Employee> to Map<empId, empName> using Java 8 Streams</i></font><font> Map<Integer, String> mapOfEmployees = employees.stream().collect(    Collectors.toMap(e -> e.getEmpId(),e -> e.getEmpName()));</font>

2.Map的Key是empId,整個對象為Map的值:

 <font><i>// convert List<Employee> to Map<empId, empName> using Java 8 Streams</i></font><font>Map<Integer, Employee> mapOfEmployees = employees.stream().collect(        Collectors.toMap( e -> e.getEmpId(), e -> e));</font>

3. 如果List中有重復的empId,映射到Map時,Key時不能重復的,如何解決?

默認情況時會拋重復異常,為了克服IllegalStateException重復鍵異常,我們可以簡單地添加一個

BinaryOperator方法到toMap()中,這也稱為合并功能,比如如果重復,可以取第一個元素:

Map<Integer, String> mapOfEmployees = employees.stream().collect(        Collectors.toMap(            e -> e.getEmpId(),             e -> e.getEmpName(),             (e1, e2) -> e1 )); <font><i>// Merge Function</i></font><font></font>

4. 將List轉換為Map - 使用TreeMap對鍵進行自然排序,或者指定的Map實現呢?

 Map<Integer, String> mapOfEmployees = employees.stream().collect(        Collectors.toMap(            e -> e.getEmpId(),             e -> e.getEmpName(),             (e1, e2) -> e1 , <font><i>// Merge Function</i></font><font>            TreeMap<Integer, String>::<b>new</b>)); </font><font><i>// Map Supplier</i></font><font></font>

如果你的TreeMap實現需要加入比較器,將上面代碼中TreeMap<Integer, String>::new替換成:

() -> new TreeMap<Integer, String>(new MyComparator())

總結

以上所述是小編給大家介紹的在Java 8中將List轉換為Map對象方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VeVb武林網網站的支持!


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 91成人在线免费观看 | 一区二区久久精品66国产精品 | 黄色淫片| 日韩黄色精品 | 国产污污视频 | 国产午夜精品久久久久久免费视 | 手机免费看一级片 | 蜜桃av网 | 欧美三级毛片 | 欧美性生交大片 | 久久久免费电影 | 日韩黄在线 | 欧美 国产 亚洲 卡通 综合 | 国产一区二区欧美 | 亚洲天堂午夜 | 嫩呦国产一区二区三区av | 一区二区三区视频播放 | 一本色道久久综合狠狠躁篇适合什么人看 | 黄色二区三区 | 黄色av片在线观看 | 天天躁狠狠躁夜躁2020挡不住 | 欧美精品免费一区二区三区 | 国产精品久久久久久影院8一贰佰 | 免费国产在线视频 | 在线观看国产网站 | 91亚洲免费视频 | 九九精品在线播放 | 亚洲成人久久精品 | lutube成人福利在线观看 | 国产91亚洲精品久久久 | 欧美一级黄视频 | 秋霞a级毛片在线看 | 精品国产一级毛片 | lutube成人福利在线观看 | 久久久一区二区三区四区 | a视频在线看 | 国产精品一区二区免费在线观看 | 大片毛片| 日本中文字幕网址 | 欧美精品激情视频 | 日产精品久久久一区二区福利 |