Array list در جاوا چیست؟ کلاس array list رابط list را پیاده سازی می کند و بر اساس ساختار داده آرایه ها بنا شده است. کلاس array list به دلیل قابلیت ها و انعطاف پذیری که ارائه می دهد بسیار مورد استفاده قرار می گیرد. قبلا یاد گرفتیم که آرایه ها به ما اجازه ذخیره چندین مقدار از یک نوع را می دهند. آرایه های ساده در جاوا داری طول ثابتی هستند بنابراین شما باید اندازه آرایه را از قبل بدانید.
آرایه های معمولی یک بار تعریف و مقدار دهی می شوند و شما نمی توانید طول یک آرایه خاص را افزایش یا کاهش دهید. اما ممکن است این مسئله پیش بیاید که شما نمی دانید چه تعداد طول آرایه را تا زمان اجرا نیاز دارید از این رو جاوا گزینه بهتری برای جایگزینی آرایه ها پیشنهاد می کند.
Array list رفتاری شبیه به یک آرایه معمولی دارد با این تفاوت که به شما اجازه می دهد که طول آن را به صورت پویا تغییر داده یا یک عنصر را در طول اجرای برنامه به آن اضافه کرده و یا از آن حذف نمایید. Array list ها یک مجموعه پویا از اشیاء را ایجاد می کنند.
تفاوت list و Array list در جاوا
Colectionها در جاوا مجموعه ای از اینترفیس ها و کلاس ها هستند که می توانیم به کمک آنها هر تعداد داده را بدون محدودیت ذخیره و پردازش کنیم. اینترفیس List یک نوع خاص از collection ها هستند که مجموعه ای از عناصر را ایجاد و به صورت متوالی ذخیره می کنند که برای دسترسی به داده ها باید از اندیس موقعیت هر داده در list استفاده کنیم.
اینترفیس list چندین فرزند از جنس کلاس دارد. کلاس های Array list, Vector, LinkedList فرزندان کلاس اینترفیس List هستند. تفاوت اصلی کلاس Array list و اینترفیس list در این است که Array list کلاس مشتق شده اینترفیس List است و اینترفیس List را پیاده سازی می کند.
بیشتر بخوانید: اگر می خواهید با یکی از کلاس های خفن جاوا آشنا بشید مقاله hashmap در جاوا را مطالعه کنید.
تفاوت های کلیدی بین List وArray list :
-
یکی از مهم ترین تفاوت های List وArray list این است که List یک اینترفیس و Array list یک کلاس است.
-
اینترفیس List فریم ورک Collection را گسترش می دهد در حالی که Array list کلاس Abstractlist را گسترش می دهد و اینترفیس List را پیاده سازی می کند.
-
اینتر فیس List مجموعه ای از عناصر را ایجاد می کند که با شماره هر خانه می توان به آنها دسترسی داشت. از طرف دیگر Array list مجموعه ای از اشیاء را ایجاد می کند که آرایه در صورت لزوم می تواند بطور پویا رشد کند.
اگر قصد دارید در زبان برنامه نویسی جاوا حرفه ای شوید و تمام نکات آن را به خوبی یاد بگیرید میتوانید دوره آموزش جاوا را به صورت کاملا رایگان مشاهده کنید.
متد های Array list در جاوا:
کلاس Array list متدهایی برای عملیات مختلف روی لیست را دارا می باشد که مهم ترین آنها عبارت اند از:
-
متد add(): برای اضافه کردن عناصر به Array list استفاده می شود.
-
متد size(): این متد شبیه به خاصیت Length آرایه معمولی است و کار آن شمارش تعداد عناصر Array list می باشد.
-
متد remove():این متد عناصر Array list را حذف می کند به این صورت که یک شی که مطابق مقدار یک عنصر در آرایه است دریافت می کند و به محض رسیدن به آن ، عنصرمورد نظررا حذف می کند. اگر عنصری غیر از مکان اخر آرایه را حذف کنید بقیه عناصر مکان خود را تنظیم می کنند. به این معنی که آرایه ای دارای 5 عنصر است و شما عنصر 3 را حذف می کنید در این صورت جای خالی این عنصر توسط عنصر 4 و جای عنصر 4 توسط عنصر 5 پر می شود.
-
متد set(): برای جایگزین کردن یک مقدار با یک مقدار موجود در Array list از این متد استفاده می شود.
-
متد get(): برای بازیابی مقدار عناصر آرایه با توجه به اندیس آن مورد استفاده قرار می گیرد.
-
متد clear():از این متد برای حذف همه عناصر موجود درلیست استفاده می شود.
-
متد contains(): با استفاده از این متد می توان جستجو کرد که آیا یک مقدار خاص در داخل ارایه وجود دارد یا خیر. این متد یک آرگومان از نوع شی را دریافت کرده و اگر یک مقدار را در داخل لیست عناصر پیدا کند True را بر می گرداند.
-
متد indexof(): این متد برای تشخیص اندیس یک مقدار خاص استفاده می شود و اندیس اولین محل وقوع یک مقدار خاص را بر می گرداند. در صورتی که مقدار مورد نظر را پیدا نکند مقدار 1- را بر می گرداند.
-
متد lastIndexof(): مانند متد قبل برای تشخیص اندیس یک مقدار خاص استفاده می شود و اندیس اخرین محل وقوع یک مقدار خاص را بر می گرداند. در صورتی که مقدار مورد نظر را پیدا نکند مقدار 1- را بر می گرداند.
در نتیجه، وقتی از تعداد عناصری که قرار است در لیستی از آیتم ها قرار بگیرند مطمئن نیستید، از ArrayList استفاده کنید.
نظر شما در تصمیم دیگران اثرگذار است.
لطفا برای همراهان درسمن و بهتر شدن دوره نظر خود را بنویسید.