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);
}
}