ArrayList يشبه المصفوفة التي يمكن تعديل حجمها. فئة ArrayList متاحة في java.util الحزمة ويمتد قائمة واجهه المستخدم . تعد إضافة عنصر وإزالته من ArrayList أمرًا سهلاً للغاية باستخدام الأساليب المضمنة فيه يضيف() و يزيل() . ولكن هناك أكثر من طريقة لإزالة عنصر من ArrayList وهي كما يلي:
الأمراض المنقولة جنسيا
- باستخدام طريقة ArrayList.remove()
- حسب الفهرس.
- حسب العنصر
- باستخدام طريقة Iterator.remove()
- باستخدام طريقة ArrayList.removeIf()
كل هذه الطرق الثلاث هي الأفضل في حد ذاتها، ويمكن استخدامها في بعض السيناريوهات المختلفة. دعونا نفهم كل هذه الطرق الثلاث، واحدة تلو الأخرى.
طريقة ArrayList.remove()
باستخدام يزيل() طريقة فئة قائمة المصفوفات هي أسرع طريقة لحذف العنصر أو إزالته من ArrayList. كما يوفر أيضًا الطريقتين المثقلتين، أي: إزالة (مؤشر كثافة العمليات) و إزالة (كائن كائن) . ال إزالة (مؤشر كثافة العمليات) تقبل الطريقة فهرس الكائن المراد إزالته، و إزالة (كائن كائن) تقبل الطريقة الكائن المراد إزالته.
لنأخذ مثالا لفهم كيفية يزيل() يتم استخدام الطريقة.
RemoveMethod.java
import java.util.ArrayList; public class RemoveMethod { public static void main(String[] args) { // creating an ArrayList having default size 5 ArrayList arr = new ArrayList(5); // Adding elements to the ArrayList arr.add('Helen'); arr.add('Paul'); arr.add('Elanie'); arr.add('Marco'); System.out.println('The list of the size is: ' + arr.size()); // Showing all the elements in the ArrayList for (String name : arr) { System.out.println('Name is: ' + name); } // Removing element available at position 1 arr.remove(1); System.out.println(' After removing the element the size of the ArrayList is: ' + arr.size()); // Showing all the elements in the ArrayList for (String name : arr) { System.out.println('Name is: ' + name); } } }
انتاج:
تحويل منطقية إلى سلسلة
لنأخذ مثالاً آخر لنفهم كيف يزيل() يتم استخدام الطريقة لإزالة العنصر المحدد من ArrayList.
RemoveElementMethod.java
import java.util.ArrayList; public class RemoveElementMethod { public static void main(String[] args) { // creating an ArrayList having default size 5 ArrayList arr = new ArrayList(5); // Adding elements to the ArrayList arr.add('Helen'); arr.add('Paul'); arr.add('Elanie'); arr.add('Marco'); System.out.println('The list of the size is: ' + arr.size()); // Showing all the elements in the ArrayList for (String name : arr) { System.out.println('Name is: ' + name); } // Removing the specified element from ArrayList arr.remove('Paul'); System.out.println(' After removing the element the size of the ArrayList is: ' + arr.size()); // Showing all the elements in the ArrayList for (String name : arr) { System.out.println('Name is: ' + name); } } }
انتاج:
طريقة Iterator.remove()
ال التكرار.إزالة () الطريقة هي طريقة أخرى لإزالة عنصر من ArrayList. إنه ليس مفيدًا جدًا في حالة التكرار على العناصر. عندما نستخدم طريقة الإزالة () أثناء تكرار العناصر، فإنها تؤدي إلى رمي ConcurrentModificationException . ال مكرر يقوم الفصل بإزالة العناصر بشكل صحيح أثناء تكرار ArrayList.
لنأخذ مثالاً لفهم كيفية استخدام طريقة Iterator.remove().
جافا كثافة العمليات لمضاعفة
IteratorRemoveMethod.java
import java.util.ArrayList; import java.util.Iterator; public class iteratorRemoveMethod { public static void main(String[] args) { // creating an ArrayList having default size 10 ArrayList numbers = new ArrayList(10); // Adding elements to the ArrayList numbers.add(12); numbers.add(1); numbers.add(8); numbers.add(5); numbers.add(9); System.out.println('The list of the size is: ' + numbers.size()); // Showing all the elements in the ArrayList for (Integer number : numbers) { System.out.println('Number is: ' + number); } // Removing elements greater than 10 using remove() method Iterator itr = numbers.iterator(); while (itr.hasNext()) { int data = (Integer)itr.next(); if (data > 10) itr.remove(); } System.out.println(' After removing the element the size of the ArrayList is: ' + numbers.size()); // Showing all the elements in the ArrayList for (Integer number : numbers) { System.out.println('Number is: ' + number); } } }
انتاج:
طريقة ArrayList.removeIf()
إذا أردنا إزالة عنصر من ArrayList يلبي عامل التصفية المسند، فإن إزالة إذا () الطريقة هي الأنسب لهذه الحالة. نقوم بتمرير مرشح المسند إلى تلك الطريقة كوسيطة.
تعليقات جافا
لنأخذ مثالا لفهم كيفية إزالة إذا () يتم استخدام الطريقة.
RemoveIfMethod.java
import java.util.ArrayList; public class RemoveIfMethod { public static void main(String[] args) { // creating an ArrayList having default size 10 ArrayList cities = new ArrayList(10); // Adding elements to the ArrayList cities.add('Berlin'); cities.add('Bilbao'); cities.add('Cape Town'); cities.add('Nazilli'); cities.add('Uribia'); cities.add('Gliwice'); System.out.println('The list of the size is: ' + cities.size()); // Showing all the elements in the ArrayList for (String city : cities) { System.out.println('City is: ' + city); } // Removing elements which are start with B using removeIf() method cities.removeIf(n -> (n.charAt(0) == 'B')); System.out.println(' After removing the element the size of the ArrayList is: ' + cities.size()); // Showing all the elements in the ArrayList for (String city : cities) { System.out.println('City is: ' + city); } } }
انتاج:
يتم استخدام جميع الأساليب التي تمت مناقشتها أعلاه لسيناريوهات مختلفة. يعد استخدام طريقة ArrayList.remove() أسرع طريقة لإزالة عنصر من ArrayList.