java字符串list去重
时间: 2023-10-31 11:06:52 浏览: 107
你可以使用Java 8中引入的Stream API来对字符串List进行去重。具体操作如下:
List<String> list = Arrays.asList("aaa", "bbb", "ccc", "aaa", "ddd");
List<String> distinctList = list.stream().distinct().collect(Collectors.toList());
这样,distinctList中就只包含了list中的不重复元素,即[aaa, bbb, ccc, ddd]。
相关问题
java字符串数组去重
在 Java 中,要去除字符串数组中的重复元素,可以采用多种方法,以下是其中的一些常见方法:
1. **利用 Set**:Set 集合不允许有重复元素,因此你可以将字符串数组转换为 Set,然后再转回数组。注意,这种方法会改变原始数组的顺序。
```java
String[] array = {"a", "b", "c", "d", "a", "e"};
Set<String> uniqueSet = new HashSet<>(Arrays.asList(array));
String[] uniqueArray = uniqueSet.toArray(new String[uniqueSet.size()]);
```
2. **使用 LinkedHashSet**:如果需要保持插入的顺序,可以使用 `LinkedHashSet`,因为它维护了元素的迭代顺序。
```java
String[] array = {"a", "b", "c", "d", "a", "e"};
List<String> list = new ArrayList<>(new LinkedHashSet<>(array));
String[] uniqueArray = list.toArray(new String[list.size()]);
```
3. **使用自定义函数**:通过遍历数组,对每个元素使用条件判断或数据结构如 Map 存储已见元素,然后只保留未见过的元素。
```java
public static String[] removeDuplicates(String[] array) {
Map<String, Boolean> map = new HashMap<>();
List<String> uniqueList = new ArrayList<>();
for (String str : array) {
if (!map.containsKey(str)) {
map.put(str, true);
uniqueList.add(str);
}
}
return uniqueList.toArray(new String[0]);
}
```
java字符串数组去重代码
可以使用ArrayList来实现Java字符串数组去重。具体代码如下:
```
public String[] removeDuplicates(String[] arr) {
ArrayList<String> list = new ArrayList<>();
for (String str : arr) {
if (!list.contains(str)) {
list.add(str);
}
}
String[] result = new String[list.size()];
result = list.toArray(result);
return result;
}
```
这个方法首先创建了一个ArrayList,然后遍历输入的字符串数组,如果当前字符串不在ArrayList中,就将其添加到ArrayList中。最后,将ArrayList转换为字符串数组并返回。
阅读全文
相关推荐












