Java三種方法將List轉(zhuǎn)換為Map的實(shí)例
1.for循環(huán)
import com.google.common.base.Function; import com.google.common.collect.Maps; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public class ListToMap { public static void main(String[] args) { List<User> userList = new ArrayList<>(); User user1 = new User(); user1.setId(1L); user1.setAge("12"); User user2 = new User(); user2.setId(2L); user2.setAge("13"); userList.add(user1); userList.add(user2); Map<Long, User> maps = new HashMap<>(); for (User user : userList) { maps.put(user.getId(), user); } System.out.println(maps); } public static class User { private Long id; private String age; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getAge() { return age; } public void setAge(String age) { this.age = age; } @Override public String toString() { return "User{" + "id=" + id + ", age='" + age + '\'' + '}'; } } }
2.使用guava
Map<Long, User> maps = Maps.uniqueIndex(userList, new Function<User, Long>() { @Override public Long apply(User user) { return user.getId(); } });
3.使用JDK1.8
Map<Long, User> maps = userList.stream().collect(Collectors.toMap(User::getId, user -> user));
看來還是使用JDK 1.8方便一些。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
相關(guān)文章
Java Calendar類常用示例_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
從JDK1.1版本開始,在處理日期和時(shí)間時(shí),系統(tǒng)推薦使用Calendar類進(jìn)行實(shí)現(xiàn)。接下來通過實(shí)例代碼給大家詳細(xì)介紹Java Calendar類相關(guān)知識,需要的朋友參考下吧2017-04-04RabbitMQ實(shí)現(xiàn)消息可靠性傳遞過程講解
消息的可靠性傳遞是指保證消息百分百發(fā)送到消息隊(duì)列中去,這篇文章主要介紹了RabbitMQ實(shí)現(xiàn)消息可靠性傳遞過程,感興趣想要詳細(xì)了解可以參考下文2023-05-05基于java中stack與heap的區(qū)別,java中的垃圾回收機(jī)制的相關(guān)介紹
本篇文章小編將為大家介紹,基于java中stack與heap的區(qū)別,java中的垃圾回收機(jī)制的相關(guān)介紹,需要的可以參考一下2013-04-04Java中jar包運(yùn)行后顯示:沒有主清單屬性的解決方案
這篇文章主要介紹了Java中jar包運(yùn)行后顯示:沒有主清單屬性的解決方案,文中給大家分析了三個(gè)主要原因,并通過代碼示例和圖文講解的非常詳細(xì),需要的朋友可以參考下2024-04-04Spring案例打印機(jī)的實(shí)現(xiàn)過程詳解
這篇文章主要介紹了Spring案例打印機(jī)的實(shí)現(xiàn)過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-10-10使用Maven進(jìn)行多模塊項(xiàng)目管理的操作步驟
使用Maven進(jìn)行多模塊項(xiàng)目管理可以清晰組織大型項(xiàng)目結(jié)構(gòu),便于維護(hù)和構(gòu)建,詳細(xì)步驟包括創(chuàng)建父項(xiàng)目,設(shè)置pom.xml,創(chuàng)建子模塊,并配置子模塊的pom.xml,在父項(xiàng)目中管理依賴,通過命令行構(gòu)建項(xiàng)目,確保配置一致性2024-10-10