آرایه انجمنی

در علوم رایانه، آرایهٔ ربطی، نگاشت، یا دیکشنری به نوع داده انتزاعی گفته می‌شود که از کلکسیونی از جفت‌های (کلید، مقدار) تشکیل شده است، بطوری‌که هر کلید ممکن حداکثر یکبار در کلکسیون ظاهر می‌شود. دلیل این نام‌گذاری این است که در این نوع آرایه هر مقدار به صراحت به یک کلید «ربط» داده شده است (در انگلیسی: Associated) در حالیکه در نوع عادی آرایه، ربط دهی به صورت ضمنی انجام می‌شود؛ یعنی هر مقدار به‌طور ضمنی مرتبط با یک اندیس (در انگلیسی: Index) است و نیازی به ذخیرهٔ کلید (اندیس) وجود ندارد. به دلیل صریح بودن ربط دهی در این نوع آرایه، آن را آرایهٔ «ربطی» (به انگلیسی Associative Array) می‌نامند، که برخی آن را آرایهٔ انجمنی نیز ترجمه کرده‌اند.

عملیات مرتبط با این نوع داده عبارتند از:..
 افزودن جفت به کلکسیون،
 حذف جفت از کلکسیون،
 تغییر مقدار جفت‌های موجود،
 مراجعه به مقدار مرتبط با یک کلید خاص

 مثال 
در زبان برنامه‌نویسی پایتون آرایه‌های انجمنی را می‌توان با قرار دادن جفت‌های key: value جدا شده با کاما در داخل آکلاد ایجاد کرد:مستندات پایتون - انواع داده توکار - دیکشنری
a = {'name': 'john', 'age': 28}

در زبان برنامه‌نویسی پی‌اچ‌پی آرایه‌های انجمنی را می‌توان به کمک دستور array یا دستور کوتاه array (با کمک کروشه) در زمان تعریف آرایه ثبت یا پس از تعریف آرایه کلیدهای جدید به آن اضافه کرد:
$a = array("name"=>"Masoud", "age"=>24);

$c = array();
$c["name"] = "Masoud";
$c["age"] = 24;

$b = ["name"=>"Masoud", "age"=>24];

$d = [];
$d["name"] = "Masoud";
$d["age"] = 24;

if($a == $b == $c == $d)
{
    if($a['name'] == $b['name'] == $c['name'] == $d['name'])
    {
        if($a['age'] == $b['age'] == $c['age'] == $d['age'])
        {
            print('$a, $b, $c and $d are equal');
        }
    }
}
در مثال بالا، پس از اجرای نمونه کد پی‌اچ‌پی، هر چهار متغیر a$ و b$ و c$ و d$ دارای مقادیر برابر خواهند بود و مقدار a, $b, $c and $d are equal$ چاپ خواهد شد.

 پانویس 


رده:انواع داده ترکیبی
رده:نوع داده انتزاعی