java list集合(String字符串)去重的方式:

摘要:
listTemp.contains){listTemp.add;}}方式二://创建一个ArrayList包含两个相同元素"111"Listlist=newArrayList();list.add;list.add;list.add;//创建HashSet集合Setset=newHashSet();set.addAll;//将list所有元素添加到set中set集合特性会自动去重复list.clear();list.addAll;//将list清空并将set中的所有元素添加到list中方式三:list=list.stream().distinct().collect;注意此处collect方法返回的是一个新的字符串˂List,?,List˃collector)Distinct()只能对于简单的如List等起作用,而对于List不起作用。

方式一:

List<String> listTemp = new ArrayList<String>();
for(int i=0;i<list.size();i++){
if(!listTemp.contains(list.get(i))){
listTemp.add(list.get(i));
}
}
方式二:

// 创建一个ArrayList 包含两个相同元素"111"
List<String> list = new ArrayList<String>();
list.add("111");
list.add("111");
list.add("222");

// 创建HashSet集合
Set set = new HashSet();
set.addAll(list);     // 将list所有元素添加到set中    set集合特性会自动去重复
list.clear();
list.addAll(set);    // 将list清空并将set中的所有元素添加到list中

方式三:

list=list.stream()
.distinct()
.collect(Collectors.toList());
注意此处collect方法返回的是一个新的字符串

<List<String>, ?> List<String> java.util.stream.Stream.collect(Collector<? super String, ?, List<String>> collector)

Distinct()只能对于简单的如List<int>等起作用,而对于List<T>不起作用。

方法四:

对于list的对象的集合
List<PexContentBill> bills = CollectionUtils.isNotEmpty(ids)?commonInfoDao.listBillDataByIds(ids):new ArrayList<>();
bills = bills.stream().filter(StreamAPIUtil.distinctByKey(PexContentBill::getBillId)).collect(Collectors.toList());

免责声明:文章转载自《java list集合(String字符串)去重的方式:》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇在Ubuntu上搭建Zookeeper集群Deepin V20编译vim8.2下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

nginx 反向代理

nginx反向代理Docker部署Apache服务Docker部署nginx服务修改nginx侦听和转发配置Docker部署Apache服务创建Dockerfile,编写以下内容,并执行dockerbuild-tv4/Apache创建v4/apacheimage。修改后,执行nginxsroad以重新加载服务测试请求/品种请求/caesar...

office 2016 专业版 删除部分组件

删除Office2016 Professional Edition####1中的一些组件。打开控制面板。2.单击此选项。3.找到Office2016并右键单击以选择更改。4.选择并确认。5.选择要删除的组件(以Access为例)。6.单击此处。7.单击“继续”。8.等等。9.完成此方法并不是真正删除模块。这意味着模块已禁用。如果您想在将来重新启用它,请重复前...

xcode模拟器不显示键盘解决方案

当我们使用Xcode进行开发时,我们并不总是需要在iPhone上运行代码。有时模拟器可以解决这些问题。但当你使用模拟器时,你会发现,如果你使用模拟器上的键盘在TextFiled中输入信息,这是可以的,但如果你使用键盘输入信息,那么你会发现模拟器上的屏幕将不再显示。这是因为默认情况下,xcode使用计算机键盘作为外部键盘,不会弹出虚拟键盘。...

vSphere HA 原理与配置

应当基于可用性需求和群集的特性选择vSphereHA接入控制策略。...

Spring Boot 核心配置文件 bootstrap &amp;amp; application

boostrap由父ApplicationContext加载,比applicaton优先加载boostrap里面的属性不能被覆盖3、bootstrap/application的应用场景application配置文件这个容易理解,主要用于SpringBoot项目的自动化配置。这个父级的SpringApplicationContext是先加载的,在加载appli...

如何设置Navicat的显示字体与字体大小?

方法/步骤打开Navicat点击菜单,再选择在界面,点击下的设置网格字体和大小设置编辑器字体和大小设置命令列界面字体和大小设置ER图表字体和大小,最后点击END...