هشها (Hashes)
هش با %: جفتهای کلید-مقدار، fat comma => و دسترسی با {}.
هش: دیکشنری پرل
هش (Hash) مجموعهای از جفتهای کلید-مقدار است — مثل دیکشنری: کلید را میدهید، مقدار را میگیرید:
my %grades = (Ali => 18, Sara => 15, Reza => 20);
fat comma =>
علامت => (fat comma) فقط کامای خواناتر است و کلید سمت چپ را خودکار رشته میکند:
my %info = (
name => "Ali", { معادل "name", "Ali" }
age => 16,
city => "Tehran",
);
دسترسی به مقدار — با $ و {}
my %grades = (Ali => 18, Sara => 15);
say $grades{Ali}; { 18 }
say $grades{Sara}; { 15 }
یادآوری سیگیل: کل آرایه @arr اما عنصر $arr[0]؛ کل هش %h اما مقدار $h{key}!
افزودن و تغییر
$grades{Neda} = 17; { افزودن }
$grades{Ali} = 19; { تغییر }
هش در برابر آرایه
| ویژگی | آرایه | هش |
|---|---|---|
| سیگیل | @ | % |
| دسترسی | $arr[0] — ایندکس عددی | $h{key} — کلید رشتهای |
| ترتیب | دارد | ندارد! |
| کاربرد | لیست مرتب | جستجو با کلید |
درج هش در رشته
my %user = (name => "Ali", age => 16);
say "نام: $user{name}"; { درج مقدار هش }
مثال: شمارش
my @words = ("apple", "banana", "apple", "cherry", "apple");
my %count;
foreach my $w (@words) {
$count{$w}++;
}
say "apple: $count{apple}"; { 3 }
این الگوی «شمارش با هش» فوقالعاده پرکاربرد است — در پروژهها استفاده میکنیم!
خلاصه
- %h کل هش، $h{key} مقدار
- fat comma => برای تعریف خوانا
- الگوی شمارش: $count{$x}++
این مبحث بخشی از دوره آموزش کامل پرل است.