Java ArrayDeque - removeIf ()

Java Arraydeque Removeif



يتم استخدام “java.util.ArrayDeque.removeIf () لإزالة عنصر / عناصر معينة من كائن مجموعة ArrayDeque باستخدام معلمة - المسند. يتطلب شرطًا أنه إذا كان صحيحًا ، فستتم إزالة العناصر الموجودة في الكائن التي تفي بهذا الشرط من كائن المجموعة. '

بناء الجملة

arraydeque_object. إزالة ( filter_condition المسند )

أين arraydeque_object يمثل مجموعة ArrayDeque.







معامل



يأخذ المسند الذي يتبع الشرط.



ملحوظة





إذا كان المسند فارغًا ، فعندئذٍ أ NullPointerException هذا خطئ.

مثال 1

هنا ، سننشئ مجموعة ArrayDeque تحتوي على 5 عناصر من نوع String ونزيل السلاسل التي تبدأ بـ 'V'.



يستورد java.util. * ؛
يستورد java.util.ArrayDeque ؛

عام صف دراسي رئيسي
{
عام ثابتة فارغ رئيسي ( سلسلة [ ] أرجس ) {

// قم بإنشاء ArrayDeque المسمى a_deque_object بنوع String
Dequea_deque_object = الجديد ArrayDeque ( ) ؛

// أدخل 5 سلاسل فيه.
a_deque_object. يضيف ( 'السيلاجا' ) ؛
a_deque_object. يضيف ( 'فارانا' ) ؛
a_deque_object. يضيف ( 'النجاح' ) ؛
a_deque_object. يضيف ( 'فيجايا' ) ؛
a_deque_object. يضيف ( 'الخارج' ) ؛

نظام . خارج . println ( 'البيانات موجودة في a_deque_object:' + a_deque_object ) ؛

// إزالة السلاسل التي تبدأ بـ 'V'.
a_deque_object. إزالة ( منقي -> ( منقي. charAt ( 0 ) == 'في' ) ) ؛

نظام . خارج . println ( 'بعد إزالة الأسماء يبدأ بحرف V:' + a_deque_object ) ؛

}
}

انتاج:

لذلك يمكننا أن نرى أن Vijaya و Vani هما السلسلتان اللتان تبدأان بحرف 'V' ، لذلك تمت إزالتهما من a_deque_object.

هنا المسند المستخدم لتصفية هذه البيانات هو - عامل التصفية -> (filter.charAt (0) == 'V')

هنا يشير المرشح إلى المتغير.

تفسير

السطر 9،18:

قم بإنشاء ArrayDeque يسمى a_dequeobject بأنواع String وقم بعرضه

السطر 21،23:

الآن قم بتصفية a_deque_object بالمسند - عامل التصفية -> (filter.charAt (0) == 'V')

مثال 2

هنا ، سننشئ مجموعة ArrayDeque تحتوي على 5 عناصر من نوع Integer ونزيل القيم التي تزيد عن 200.

يستورد java.util. * ؛
يستورد java.util.ArrayDeque ؛

عام صف دراسي رئيسي
{
عام ثابتة فارغ رئيسي ( سلسلة [ ] أرجس ) {

// قم بإنشاء ArrayDeque المسمى a_deque_object بنوع عدد صحيح
Dequea_deque_object = الجديد ArrayDeque ( ) ؛

// أدخل 5 عدد صحيح فيه.
a_deque_object. يضيف ( 100 ) ؛
a_deque_object. يضيف ( 200 ) ؛
a_deque_object. يضيف ( 300 ) ؛
a_deque_object. يضيف ( 400 ) ؛
a_deque_object. يضيف ( 500 ) ؛

نظام . خارج . println ( 'البيانات موجودة في a_deque_object:' + a_deque_object ) ؛

// قم بإزالة القيم الأكبر من 200
a_deque_object. إزالة ( منقي -> ( منقي > 200 ) ) ؛
نظام . خارج . println ( 'بعد إزالة القيم الأكبر من 200:' + a_deque_object ) ؛

}
}

انتاج:

لذلك يمكننا أن نرى أن 300 و 400 و 500 هي القيم الثلاث الأكبر من 200. لذلك تم إزالتها من a_deque_object.

هنا المسند المستخدم لتصفية هذه البيانات هو - مرشح -> (مرشح> 200)

هنا يشير المرشح إلى المتغير.

تفسير

السطر 9،18:

قم بإنشاء ArrayDeque يسمى a_dequeobject بأنواع عدد صحيح وعرضه

السطر 21،22:

الآن قم بتصفية a_deque_object بالمسند - مرشح -> (مرشح> 200)

مثال 3: شرح NullPointerException

دعونا نحدد Null كمسند.

يستورد java.util. * ؛
يستورد java.util.ArrayDeque ؛

عام صف دراسي رئيسي
{
عام ثابتة فارغ رئيسي ( سلسلة [ ] أرجس ) {

// قم بإنشاء ArrayDeque المسمى a_deque_object بنوع عدد صحيح
Dequea_deque_object = الجديد ArrayDeque ( ) ؛

// أدخل 5 أعداد صحيحة فيه.
a_deque_object. يضيف ( 100 ) ؛
a_deque_object. يضيف ( 200 ) ؛
a_deque_object. يضيف ( 300 ) ؛
a_deque_object. يضيف ( 400 ) ؛
a_deque_object. يضيف ( 500 ) ؛

نظام . خارج . println ( 'البيانات موجودة في a_deque_object:' + a_deque_object ) ؛

a_deque_object. إزالة ( لا شيء ) ؛

}
}

انتاج:

يمكننا أن نرى أن NullPointerException تربى.

استنتاج

لقد رأينا كيفية إزالة العناصر من كائن مجموعة ArrayDeque باستخدام Predicate باستخدام طريقة removeIf (). تأكد من عدم تحديد قيمة خالية ، حيث ينتج عنها NullPointerException. ناقشنا مثالين من خلال تطبيق شروط مختلفة في المسند وأظهرنا أيضًا NullPointerException.