Как использовать HashSet

HashSet класс является конкретной реализацией интерфейса Set. Она создает коллекцию, которая использует хэш-таблицу для хранения. Хеш-таблица хранит информацию с помощью механизма, называемого хеширования. В хеширование, информационное содержание ключ используется для определения уникальной ценности, называемое его хэш-код. Хранятся хэш-код затем используется в качестве индекса, при которой данные, связанные с ключом. Преобразование ключа в своем хэш-код выполняется автоматически. Вы никогда не увидите хэш-код. Преимущество хэширования является то, что она позволяет время выполнения основных операций, таких, как добавить (), содержит (), Remove (), и размер () будет оставаться неизменной, даже для больших объемов.

HashSet не синхронизированы. Если более одного потока хочет получить к нему доступ в то же время оно должно быть синхронизирован извне.

Этот код показывает использование HashSet. Это позволит определить количество дублированных слов в строке. Строка передается в качестве аргументов командной строки.

Добавить () Метод HashSet добавить объект в хранилище, если она еще не создана.


import java.util.*;



public class FindDups {



  public static void main(String[] args) {

  

    Set s = new HashSet();



    for(int i=0; i<args.length;i++){

      if(!s.add(args[i]))

        System.out.println("Duplicate detected : " + args[i]);

    }



    System.out.println(s.size() " distinct words detected : " + s );

  }

}

Запуск программы: C: \\> Java FindDups я пришел я пришел и завоевал

Вывод на экран:

Duplicate detected: i
Duplicate detected: i
4 distinct words detected : [came,saw,conquered,i]

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>