去除List<String>
时间: 2023-10-14 17:16:35 浏览: 39
如果想要去除List<String>中的重复元素,可以使用HashSet来实现:
```java
List<String> listWithDuplicates = Arrays.asList("apple", "banana", "orange", "apple", "orange");
Set<String> setWithoutDuplicates = new HashSet<>(listWithDuplicates);
List<String> listWithoutDuplicates = new ArrayList<>(setWithoutDuplicates);
```
这样就可以得到一个新的List<String>,其中不包含重复元素。需要注意的是,新的List<String>的元素顺序可能与原来的不同,因为HashSet并不保证元素的顺序。
相关问题
List<String> 去掉null java
要去掉 List<String> 中的 null 值,你可以使用 Java 8 的 Stream API 来实现。你可以使用 `filter` 方法来过滤掉 null 值。下面是一个示例代码:
```java
List<String> list = Arrays.asList("A", null, "B", null, "C");
List<String> filteredList = list.stream()
.filter(Objects::nonNull)
.collect(Collectors.toList());
System.out.println(filteredList);
```
这段代码将会输出 `["A", "B", "C"]`,即过滤掉了原始列表中的 null 值。
list<string> 去重
在 C++ 中,可以使用 set 容器来去除一个 list<string> 中的重复元素。示例代码如下:
```
#include <iostream>
#include <list>
#include <set>
#include <string>
int main() {
std::list<std::string> mylist = {"apple", "orange", "banana", "apple", "grape", "banana"};
std::set<std::string> myset(mylist.begin(), mylist.end());
mylist.assign(myset.begin(), myset.end());
for (const auto& s : mylist) {
std::cout << s << " ";
}
std::cout << std::endl;
return 0;
}
```
这段代码首先定义了一个 list<string>,其中包含了重复的元素。接着,将该 list<string> 中的元素转存到 set<string> 中,set<string> 会自动去重并排序。最后,将去重后的元素转存回原来的 list<string> 中。最终输出的结果是不包含重复元素的 list<string>。
注意,这种方法会改变原来 list<string> 的顺序,因为 set<string> 会自动排序。如果需要保持原来的顺序,可以使用 unordered_set 容器。