ArrayList
على عكس المصفوفات العادية ، فإن & nbsp؛ ArrayList من الحزمة java.util عبارة عن مصفوفة يتم توسيعها تلقائيًا. & nbsp؛ عندما تنشئ كائنًا من النوع ArrayList ، فلن تحتاج إلى تحديد أبعادها. على سبيل المثال،
ArrayList list = new ArrayList ()؛
مزايا strong> ArrayList مقارنة بمصفوفة عادية:
- الوصول السريع إلى العناصر عن طريق الفهرس في وقت ثابت
O (1) ؛
- الوصول إلى العناصر حسب القيمة في الوقت الخطي
O (n) ؛
- يسمح لك بتخزين أي قيمة ، بما في ذلك
null .
نقاط الضعف strong> ArrayList :
إدخال / إزالة عنصر & nbsp؛ يتسبب في استبدال جميع العناصر الموضوعة "على اليمين" في القائمة موضع واحد على اليسار ، أي أنه يعمل في الوقت الخطي O (n) ؛
تذكر أن القوائم لا يمكن أن تحتوي إلا على كائنات ، لذلك إذا كنت تريد تخزين الأرقام ، فاستخدم عدد صحيح code> بدلاً من int . Integer هو اسم فئة ، ويمكن أن يحتوي كائن من هذه الفئة على قيمة عدد صحيح. يمكنك قراءة المزيد عن الفئات والكائنات هنا: & nbsp؛ مقدمة عن البرمجة الشيئية .
|
هناك خياران لإضافة عنصر إلى ArrayList:
add (value)؛ & nbsp؛ - إضافة قيمة إلى نهاية ArrayList
add (index، value)؛ - إضافة قيمة إلى المكان الصحيح عن طريق الفهرس.
على سبيل المثال:
arr . أضف span> (10)؛ تمتد>
arr . أضف span> (5،10)؛ span>
نبسب ؛
|
للحصول على قيمة عنصر من ArrayList ، استخدم طريقة & nbsp؛ get (index)
على سبيل المثال:
int a = arr . احصل على span> (0)؛
لمعرفة عدد العناصر في المصفوفة ، يمكنك استخدام طريقة size ()
على سبيل المثال:
عدد span> عدد = arr . الحجم span> ()؛
|
لتغيير القيمة بالفهرس في القائمة ، استخدم name.set (index، value)؛ & nbsp؛
نبسب ؛
arr . مجموعة span> (0،10)؛ span>
|
هناك خياران لإضافة عنصر إلى ArrayList:
add (value)؛ & nbsp؛ - إضافة قيمة إلى نهاية ArrayList
add (index، value)؛ - إضافة قيمة إلى المكان الصحيح عن طريق الفهرس.
على سبيل المثال:
arr . أضف span> (10)؛ تمتد>
arr . أضف span> (5،10)؛ span>
نبسب ؛
|
يمكنك إزالة العناصر في ArrayList باستخدام طريقة remove بطريقتين:
- حسب الفهرس الحذف (الفهرس)
- حسب القيمة إزالة (القيمة) li>
على سبيل المثال:
نبسب ؛
arr . إزالة span> (0)؛ span> // يزيل العنصر الأول em>
arr . إزالة span> ( < strong> new عدد صحيح (10))؛ // يحذف عنصر بقيمة 10
|
عكس ArrayList
توفر واجهة Collections & nbsp؛ أيضًا طرقًا للعمليات المجمعة التي تعمل على المجموعة بأكملها:
containsAll - & nbsp؛ تُرجع القيمة المنطقية صواب code> إذا كانت هذه المجموعة تحتوي على جميع العناصر في المجموعة التي تم استدعاؤها ، وإلا فإنها ترجع خطأ code>.
addAll - & nbsp؛ يضيف كل العناصر المحددة إلى المجموعة المحددة. يمكن تحديد العناصر المراد إضافتها بشكل فردي أو كمصفوفة.
removeAll - & nbsp؛ & nbsp؛ تُستخدم لإزالة كافة العناصر الموجودة في المجموعة المحددة من القائمة.
مسح code> - إزالة جميع العناصر
عكس code> - عكس المصفوفة
إلخ.
مثال
باستخدام removeAll .
ArrayList & lt؛ عدد صحيح & GT؛ first = new ArrayList & lt؛ عدد صحيح & gt؛ ()؛
first.add (1) ؛
first.add (2) ؛
first.add (3) ؛
ArrayList & lt؛ عدد صحيح & GT؛ second = new ArrayList & lt؛ عدد صحيح & GT؛ ()؛
second.add (1) ؛
second.add (2) ؛
// يزيل جميع العناصر من القائمة الثانية ،
// إذا كانت موجودة في القائمة الأولى
second.removeAll (أولا) ؛
|