IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> 集合中的常用转化 -> 正文阅读

[开发工具]集合中的常用转化

集合中的常用转化


1.将 List< T > 提取其中某个字段转换成 List< T > :

例: 从 List< UserEntity > userList 提取 UserEntity 中的一个字段,如手机号 phoneNum

(1).使用stream的方式:

List<String> phoneNumList = userList.stream().map(UserEntity -> UserEntity.getPhoneNum()).collect(Collectors.toList());

(2).使用guava:

List<String> phoneNumList = Lists.transform(userList,UserEntity  -> UserEntity.getPhoneNum()); 

.
.


2.List 与 Set 的相关转化:

(1) 例:List< T > list 转化为 Set< T > set

Set< T > set = new HashSet(userList);

(2) 例:Set< T > set 转化为 List< T > list

List< T > list = new ArrayList(set);

.
.


3.集合取交集,并集,差集

(1) 取 list1 与 list2 的交集

    List<String> newList = list1.stream().filter(item -> list2.contains(item)).collect(toList());

(2) 差集 (list1 - list2)

    List<String> newList = list1.stream().filter(item -> !list2.contains(item)).collect(toList());

(3) 并集 (list1 + list2 去重)

    List<String> listAll = list1.parallelStream().collect(toList());
    List<String> listAll2 = list2.parallelStream().collect(toList());
    listAll.addAll(listAll2);
    List<String> newList = listAll.stream().distinct().collect(toList());

.
.


4.List < T > 转 Map< T , T >

详细版链接:List转Map

例1: List < Entity> 转 Map<Entity.getId,Entity>

Map<Long, VipEntity> vipMap = vipList.stream().collect(Collectors.toMap(VipEntity::getUserId, v -> v, (v1, v2) -> v1));

例2:List < Long> 转 Map<Long,Long>

Map<Long, Long> map = list.stream().collect(Collectors.toMap(Function.identity(), Function.identity()));

.
.


5.Map< T , T > 转 List< T >

例:Map< Integer , String > 转 List< T >

(1) Map的key转List

 List<Integer> result = map.keySet().stream().collect(Collectors.toList());

(2) Map的value转List

 List<String> result = map.values().stream().collect(Collectors.toList());
  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-04-01 00:17:48  更:2022-04-01 00:19:27 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 5:48:40-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码