java 合并list
时间: 2023-09-01 14:13:54 浏览: 99
Java中的List.contains()方法用于检查列表中是否包含指定元素。如果包含,则返回true,否则返回false。该方法的语法如下:
boolean contains(Object o)
其中,参数o是要检查的元素。如果o是列表中的元素,则返回true,否则返回false。该方法使用equals()方法来比较元素。因此,如果要检查自定义对象是否在列表中,需要重写equals()方法。
相关问题
java合并list_怎么用java把多个list合并成一个?
可以使用Java8中的Stream API和flatMap()方法来合并多个List。
下面是一个简单的示例代码:
```java
List<List<Integer>> lists = new ArrayList<>();
lists.add(Arrays.asList(1, 2, 3));
lists.add(Arrays.asList(4, 5, 6));
lists.add(Arrays.asList(7, 8, 9));
List<Integer> mergedList = lists.stream()
.flatMap(Collection::stream)
.collect(Collectors.toList());
System.out.println(mergedList); // [1, 2, 3, 4, 5, 6, 7, 8, 9]
```
首先,我们创建了一个包含三个List的List。然后,我们使用Stream API中的flatMap()方法将所有的List中的元素合并成一个流。最后,我们使用collect()方法将流中的所有元素收集到一个List中。
注意,这种方法只能合并同一类型的List。如果需要合并不同类型的List,需要使用泛型传递类型参数。
java合并list对象中重复的值
要合并两个List对象中重复的值,可以使用的Stream API和Collectors类来实现。下面是一个示例代码:
java
import java.util.ArrayList;
import java.util;
import java.util.stream.Collectors;
public MergeLists {
public static void main(String[] args) {
List<Integer> list1 = new ArrayList<>();
list1.add(1);
list1.add(2);
list1.add(3);
List<Integer> list2 = new ArrayList<>();
list2.add(3);
list2.add(4);
list2.add(5);
List<Integer> mergedList = mergeLists(list1, list2);
System.out.println(mergedList); // 输出结果:[1, 2, 3, 4, 5]
}
public static <T> List<T> mergeLists(List<T> list1, List<T> list2) {
return list1.stream()
.filter(list2::contains)
.collect(Collectors.toList());
}
}
```
在上述示例中,我们定义了mergeLists方法,该方法接受两个List对象作为参数,并使用Stream API进行合并操作。通过使用filter方法和contains方法来过滤出list1中包含在list2中的元素,最后使用collect方法将结果收集到一个新的List中并返回。这样就能得到合并后的List对象,其中包含了两个原始列表中重复的值。
阅读全文