Розбіжності
Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.
Порівняння попередніх версій Попередня ревізія Наступна ревізія | Попередня ревізія | ||
perl:hash [04/06/2022 10:48] – Method | perl:hash [06/06/2022 14:30] (поточний) – Method | ||
---|---|---|---|
Рядок 7: | Рядок 7: | ||
Хеш — це невпорядкована група пар ключ-значення. Ключі є унікальними струнами. Значення є скалярними значеннями. Кожне значення може бути числом, | Хеш — це невпорядкована група пар ключ-значення. Ключі є унікальними струнами. Значення є скалярними значеннями. Кожне значення може бути числом, | ||
- | Хеші, як і інші змінні Perl, оголошуються за допомогою ключового слова | + | Хеші, як і інші змінні Perl, оголошуються за допомогою ключового слова |
Хеші є одним з основних типів даних Perl. | Хеші є одним з основних типів даних Perl. | ||
+ | |||
+ | Хеші поділяють на однорівневі та багаторівневі. Також можуть зберігатись в своїй формі (%hash) або в формі посилання ($hashref). | ||
+ | |||
+ | <WRAP center round tip 100%> | ||
+ | Хеш є найкращим типом даних для комунікації між складними функціями, | ||
+ | |||
+ | Також, при такому підході, | ||
+ | </ | ||
+ | |||
===== Оголошення, | ===== Оголошення, | ||
Рядок 36: | Рядок 45: | ||
- | Оператор «жирна кома» виглядає як стрілка (' | + | Оператор «**жирна кома**» виглядає як стрілка ('**=>**') і дозволяє оголошувати пари значень ключів замість коми. Це робить код більш чистим і читабельним. Крім того, під час використання жирної коми не потрібно брати рядки в лапки для ключів. Використовуючи жирну кому, те саме оголошення %hash виглядатиме так: |
<code perl> | <code perl> | ||
my %hash = ( | my %hash = ( | ||
Рядок 47: | Рядок 56: | ||
</ | </ | ||
- | ===== Наповнення та видалення ===== | + | <WRAP center round tip 100%> |
- | Оголошує порожній хеш: | + | Все вищезгадане також підходить для форми посилання ($hashref), замінивши " |
- | <code perl>my %hash;</ | + | </ |
- | Оголошує порожній хеш: | + | |
- | <code perl>my %hash;</ | + | |
- | Оголошує порожній хеш: | + | ===== Наповнення, зміна |
- | <code perl>my %hash;</ | + | |
- | Оголошує | + | <WRAP center round important 100%> |
- | <code perl> | + | * ключем може бути будь-який скаляр. |
+ | * ключ може бути переданий в змінній. | ||
+ | * якщо ключ має в собі | ||
+ | </ | ||
+ | |||
+ | <WRAP center round important 100%> | ||
+ | * значення може бути переданий в змінній. | ||
+ | * числове значення треба передавати без лапок. | ||
+ | * рядкове значення треба передавати в лапок. | ||
+ | * результат обрахунку - в простих жужках. | ||
+ | * результат функції - виклик функції. | ||
+ | * масив або | ||
+ | </ | ||
+ | |||
+ | При зверненні до елементу хешу по ключу в контексті хешу (%hash), необхідно замінити " | ||
+ | <code perl>$hash{key} = ' | ||
+ | При зверненні до елементу посилання по ключу в контексті посилання ($hashref), необхідно після назви посилання вставити ' | ||
+ | <code perl>$hashref-> | ||
+ | так відбувається | ||
+ | |||
+ | За такими | ||
+ | <code perl>delete $hash{key};</ | ||
+ | <code perl> | ||
+ | |||
+ | Також при видаленні можна зберігати значення в іншу змінну, | ||
+ | <code perl> | ||
+ | <code perl>my $a = delete $hashref-> | ||
+ | Таким чином в змінну $a буде збережено значення, | ||
+ | |||