Удаление дубликатов в java

Рейтинг: 2Ответов: 1Опубликовано: 16.03.2015

Всем доброго времени суток.

Задача простая, но что-то никак не могу её реализовать, так как в java я новичок, но разобраться в решении очень хочется и интересно. Заранее спасибо неравнодушным.

Задана последовательность, состоящая от 1 до 20 слов, между которыми находится не менее 1 пропуска. Каждое слово содержит от 1 до 10 символов. Напечатать эту же последовательность слов, но без повторений одинаковых слов.

Ответы

▲ 3
/*
  Создаём массив слов
*/
String[] mWords = new String[] { "вот", "тут", "слова", "слова" };

/*
  Создаём список строк без повторений
*/
HashSet<String> mSet = new HashSet<String>();

/*
  Копируем данные из массива в список, убирая дубликаты
*/
Collections.addAll(mSet, mArray);

/*
  Выводим результат
*/
for (String word : mSet)
{
    System.out.println(word);
}

Update

Большое спасибо @zhenyab за замечание о сохранении последовательности! Если важна последовательность, то решение доступно на StackOverflow. Там массив чисел, но не составит особого труда переделать под строки.