Latest web development tutorials

Java Hashtable Интерфейс

Hashtable является частью оригинального java.util является словарь конкретной реализацией.

Тем не менее, реконструкция Java 2 Hashtable реализует интерфейс Map, поэтому, Hashtable теперь интегрирован в структуру коллекций. Это класс HashMap очень похож, но он поддерживает синхронизацию.

Как Как HashMap, Hashtable в хэш-таблице для хранения пар ключ / значение. При использовании хэш-таблицу, чтобы указать объект в качестве ключа, и вы хотите перейти по ссылке к стоимости облигации.

Затем ключ хешируется и результирующий хэш-код используется в качестве индекса для хранения значений в таблице.

Hashtable определяет четыре конструктора. Первый конструктор по умолчанию:

Hashtable()

Второй конструктор создает заданный размер хэш-таблицы:

Hashtable(int size)

Третий конструктор создает заданный размер хэш-таблицы, а также указать заливки пропорции по fillRatio.

Коэффициент наполнения должно составлять от 0,0 до 1,0, что определяет в полной мере хэш-таблицы перед повторной калибровки:

Hashtable(int size,float fillRatio)

Четвертый конструктор создает элемент к элементу M в хэш-таблице инициализируется.

Емкость хэш-таблицы устанавливается в два раза M'S.

Hashtable(Map m)

Hashtable в дополнение к методам, определенным в интерфейсе карт, но и определяет следующие методы:

Нет . Метод Описание
1 аннулированию ясно ()
Очищает этот хэш-таблицу, так что она не содержит ключей.
2 Клон Object ()
Создает неполную копию этого хэш-таблицы.
3 булево содержит (значение объекта)
Есть ли значение, связанное с указанным ключом теста это отображение таблицы.
4 булево ContainsKey (ключ объекта)
Проверяет, является ли указанный объект является ключевым в этом Hashtable.
5 булево containsValue (значение объекта)
Если этот Hashtable отображает один или несколько ключей к этому значению, оно возвращает истину.
6 элементы перечисления ()
Возвращает значения перечисления хэш-таблицы.
7 получить объект (ключ объекта)
Возвращает указанный ключ отображается на значение, если эта карта не содержит отображения для этого ключа, он возвращает нуль. Более формально, если эта карта содержит (key.equals (к)) от ключа к к значению об Mapping , то этот метод возвращает значение v, в противном случае она возвращает нуль.
8 булево IsEmpty ()
Тесты, если этот Хеш не отображает ни одного ключа к значениям.
9 Перечисления ключи ()
Возвращает перечисление ключей хеш-таблицы.
10 положить объект (объект ключ, значение объекта )
Указанный ключ отображается в хэш-таблицы заданного значения.
11 недействительным перепевы ()
Повышение потенциала хэш-таблицы и ее внутреннюю реорганизацию, чтобы лучше приспособить и получить доступ к его элементам.
12 Объект удалить (ключ объекта)
Выньте ключ и его соответствующее значение из хеш-таблицы.
13 размер Int ()
Возвращает количество ключей в этой хэш-таблицы.
14 Строка ToString ()
Возвращает строковое представление объекта Hashtable в виде ASCII-символов "," (запятой и пробелом), разделенных, заключенный в фигурные скобки и набор записей.

примеров

Следующая программа иллюстрирует это структура данных поддерживает несколько методов:

import java.util.*;

public class HashTableDemo {

   public static void main(String args[]) {
      // Create a hash map
      Hashtable balance = new Hashtable();
      Enumeration names;
      String str;
      double bal;

      balance.put("Zara", new Double(3434.34));
      balance.put("Mahnaz", new Double(123.22));
      balance.put("Ayan", new Double(1378.00));
      balance.put("Daisy", new Double(99.22));
      balance.put("Qadir", new Double(-19.08));

      // Show all balances in hash table.
      names = balance.keys();
      while(names.hasMoreElements()) {
         str = (String) names.nextElement();
         System.out.println(str + ": " +
         balance.get(str));
      }
      System.out.println();
      // Deposit 1,000 into Zara's account
      bal = ((Double)balance.get("Zara")).doubleValue();
      balance.put("Zara", new Double(bal+1000));
      System.out.println("Zara's new balance: " +
      balance.get("Zara"));
   }
}

Приведенные выше примеры скомпилированные получены следующие результаты:

Qadir: -19.08
Zara: 3434.34
Mahnaz: 123.22
Daisy: 99.22
Ayan: 1378.0

Zara's new balance: 4434.34