java - 问题:按字母顺序删除字符串数组列表中的重复项
问题描述
这是我从数组列表中删除重复项的函数(按字母顺序排序):
public static void removeDuplicate(ArrayList<String> array){
for (int i = 0; i < array.size(); i++) {
if (i + 1 < array.size()) {
if (array.get(i).equalsIgnoreCase((array.get(i + 1)))) {
array.remove(i + 1);
i=0;
}
}
}
}
但不知何故,仍然有一些重复,我已经寻找其他方法来删除数组列表中的重复,它们和我的一模一样。所以现在我真的很努力。如果您能帮助找到我的问题的解决方案,将不胜感激。顺便说一句,这里是当我打印我的arraylist 函数removeDuplicate(array) 后输出的示例:
一个能力与年龄相适应的成年人
解决方案
在迭代列表时修改列表通常会反击。
尝试这个
public static List<String> removeDuplicate(ArrayList<String> array) {
return array.stream().distinct().collect(Collectors.toList());
}
推荐阅读
- python - Can't insert DateTime into SQL Server from Python
- java - 使用 EventHandler 更改图形
- python-3.x - Python 3 原始字节字符串
- c# - Razor 页面等待 Blazor 组件完成渲染的规范方式是什么?
- java - 如何使用 Java NetBeans 改组图像
- opencart - opencart 1.5.6.4 版本小更新
- javascript - 如何在 Vue js 中将 FileReader 用于两个或多个输入字段?
- python - 如何创建一个包含单引号和双引号 python 的字符串?
- scala - Spark:mapPartitions 对象不可序列化
- html - 调整表格中单元格的大小