При создании элементов ассоциативного массива
Замечание
При создании элементов ассоциативного массива они сохраняются в памяти в порядке, удобном для их .последующего извлечения. Поэтому при его печати последовательность элементов не соответствует порядку их задания. Для упорядочивания значений хеш-массивов следует воспользоваться встроенной функцией сортировки.
Итак, хеш-массивы позволяют обращаться к своим элементам не с помощью числового индекса, а с помощью индекса, представленного строкой. Но что же здесь такого замечательного, какие возможности предоставляет подобная конструкция? Огромные. И первое, что приходит на ум, — это использовать ключи как аналог ключей реляционных таблиц. Правда, хеш-массивы не позволяют непосредственно хранить запись, а только один элемент, но и этого уже достаточно, чтобы создать достаточно сложные структуры данных (пример 3.7).
#! peri -w %friend = (
"0001", "Александр Иванов",
"0002", "Александр Петров",
"0003", "Александр Сидоров" ); %city = (
"0001", "Санкт-Петербург",
"0002", "Рязань", '"0003", "Кострома" ) ; %job = ( •
"0001", "учитель",
"0002", "программист",
"0003", "управляющий"
) ; . ' $person = "0001";
print "Мой знакомый $friend{$person}\n"; print "живет в городе $city{$person}\n"; print "и имеет профессию $job{$person}.\п";
В этом примере создана простейшая база данных знакомых, в которой хранятся их имена, места жительства и профессии. Перечисленная информация содержится в разных хеш-массивах с одинаковым набором ключей, которые и связывают информацию по каждому человеку. Выполнение программы примера 3.6 приведет к отображению на экране монитора следующего текста:
Мой знакомый Александр Иванов живет в городе Санкт Петербург и имеет профессию учитель.
Если изменить значение переменной $person на другой ключ, то отобразится связанная информация о другом человеке.
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий