Java 8 Streams | Concatenate Two Lists | Stream.concat() with Example

Java 8 Programs

Java 8 Real Time Interview Coding Questions and Answers

We use Stream.concat() to combine two lists and apply:

✔ distinct() to remove duplicates

✔ sorted() with Comparator.reverseOrder()

✔ collect(Collectors.toList()) to store results


 



 package org.practice.basicprgms;


import java.util.Arrays;

import java.util.Comparator;

import java.util.List;

import java.util.stream.Collectors;

import java.util.stream.Stream;


public class ConcatenateListDemo {


public static void main(String[] args) {

List<String> strList1 = Arrays.asList("Java", "Nodejs", "C");

List<String> strList2 = Arrays.asList("JavaScript", "Angular", "Java", "C");

List<String> combinedList;

Stream.concat(strList1.stream(), strList2.stream())

.distinct()

.sorted(Comparator.reverseOrder())

.forEach(System.out::println);

System.out.println("--------------------------------------");

combinedList = Stream.concat(strList1.stream(), strList2.stream())

.distinct()

.sorted(Comparator.reverseOrder())

.collect(Collectors.toList());

System.out.println("Combined Sorted List : "+ combinedList);

/*

List<Integer> list1 = Arrays.asList(10,40,20,30,50);

List<Integer> list2 = Arrays.asList(40,70,60);

List<Integer> mergedList;

Stream.concat(list1.stream(), list2.stream())

.distinct()

.sorted(Comparator.reverseOrder())

.forEach(System.out::println);


System.out.println("-----------------------------");

mergedList = Stream.concat(list1.stream(), list2.stream())

.distinct()

.sorted(Comparator.reverseOrder())

.collect(Collectors.toList());

System.out.println("Merged Elements : "+ mergedList);

*/

}


}


Post a Comment

0 Comments