Создайте HashSet из исходной коллекции: он оставит уникальные строки по equals/hashCode. Если нужно сохранить порядок первого появления, используйте LinkedHashSet.
Перевод списка строк в набор уникальных значений
Создайте HashSet из исходной коллекции: он оставит уникальные строки по equals/hashCode. Если нужно сохранить порядок первого появления, используйте LinkedHashSet.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Условие
Необходимо преобразовать список строк в множество, оставив только уникальные элементы.
import java.util.Collection;
public class JetbulbInterview {
public static void main(String[] args) {
Collection<String> source = Collections.singletonList("hello world");
Set<String> uniqueSet =
}
}
Ответ
Создайте HashSet из исходной коллекции: он оставит уникальные строки по equals/hashCode. Если нужно сохранить порядок первого появления, используйте LinkedHashSet.
java.util.Set<String> uniqueSet = new java.util.HashSet<>(source);
Для приведённого source множество содержит единственную строку hello world. HashSet не гарантирует порядок итерации; TreeSet сортирует, но использует сравнение. В исходном примере также нужен import java.util.Collections либо полное имя класса для singletonList. Преобразование не изменяет саму исходную коллекцию.