Search⌘ K
AI Features

Solution: The Email Sanitizer

Explore how to clean and standardize email lists in Java by applying functional programming concepts. Learn to use Streams for filtering null values, trimming whitespace, removing empty entries, and converting email addresses to lowercase, resulting in a robust and clean list.

We'll cover the following...
Java 25
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import java.util.Objects;
public class EmailSanitizer {
public static List<String> sanitizeEmails(List<String> rawEmails) {
return rawEmails.stream()
// Remove nulls first to avoid NullPointerException
.filter(email -> email != null)
// Trim whitespace from the remaining strings
.map(String::trim)
// Remove strings that became empty after trimming
.filter(email -> !email.isEmpty())
// Convert to lowercase for consistency
.map(String::toLowerCase)
// Collect the results back into a List
.collect(Collectors.toList());
}
public static void main(String[] args) {
List<String> rawData = Arrays.asList(
" john.doe@Example.com ",
null,
"",
"JANE.SMITH@work.org",
" ",
"admin@Internal.net"
);
List<String> cleanData = sanitizeEmails(rawData);
System.out.println("Original list size: " + rawData.size());
System.out.println("Clean list size: " + cleanData.size());
System.out.println("Cleaned Emails: " + cleanData);
}
}
...