Унаследованные коллекции в Java

В ряде распределенных приложений, например с использованием сервлетов, до сих пор применяются коллекции, более медленные в обработке, но при этом потокобезопасные, существовавшие в языке Java с момента его создания, а именно карта Hashtable<K,V>, список Vector<E> и перечисление Enumeration<E>. Все они также были параметризованы, но сохранили все свои особенности.

Класс Hashtable<K,V> реализует интерфейс Map, но обладает также несколькими интересными методами:

Enumeration<V> elements() – возвращает перечисление (аналог итератора) для значений карты;

Enumeration<K> keys() – возвращает перечисление для ключей карты.

/* пример # 18 : создание хэш-таблицы и поиск элемента по ключу:

HashTableDemo.java */

package chapt10;

import java.util.*;

import java.io.*;

public class HashTableDemo {

public static void main(String[] args) {

Hashtable<Integer, Double> ht =

new Hashtable<Integer, Double>();

for (int i = 0; i < 5; i++)

ht.put(i, Math.atan(i));

Enumeration<Integer> ek = ht.keys();

int key;

while (ek.hasMoreElements()) {

key = ek.nextElement();

System.out.printf("%4d ", key);

}

System.out.println("");

Enumeration<Double> ev = ht.elements();

double value;

while (ev.hasMoreElements()) {

value = ev.nextElement();

System.out.printf("%.2f ", value);

}

}

}

В результате в консоль будет выведено:

4 3 2 1 0

1,33 1,25 1,11 0,79 0,00

Принципы работы с коллекциями, в отличие от их структуры, со сменой версий языка существенно не изменились.

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Оставьте отзыв

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

 
Rambler's Top100