Java ArrayDeque - removeIf()

Java Arraydeque Removeif



'java.util.ArrayDeque.removeIf() משמש להסרת אלמנט/ים מסוימים מאובייקט האוסף ArrayDeque באמצעות פרמטר - פרדיקט. זה דורש תנאי כזה שאם הוא נכון, אז אלמנטים באובייקט שעומדים בתנאי זה מוסרים מאובייקט האוסף.'

תחביר

arraydeque_object. removeIf ( פרדיקט filter_condition )

איפה arraydeque_object מייצג את אוסף ArrayDeque.







פָּרָמֶטֶר



זה דורש פרדיקט שעוקב אחר התנאי.



הערה





אם הפרדיקט הוא ריק, אז א NullPointerException נזרק.

דוגמה 1

כאן, ניצור אוסף ArrayDeque עם 5 אלמנטים מסוג String ונסיר את המחרוזות שמתחילות ב-'V'.



יְבוּא java.util.* ;
יְבוּא java.util.ArrayDeque ;

פּוּמְבֵּי מעמד רָאשִׁי
{
פּוּמְבֵּי סטָטִי בָּטֵל רָאשִׁי ( חוּט [ ] args ) {

// צור ArrayDeque בשם a_deque_object עם סוג מחרוזת
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. removeIf ( לְסַנֵן -> ( לְסַנֵן. charAt ( 0 ) == 'IN' ) ) ;

מערכת . הַחוּצָה . println ( 'לאחר הסרת השמות מתחיל ב-V :' + a_deque_object ) ;

}
}

תְפוּקָה:

אז אנחנו יכולים לראות ש-Vijaya ו-Vani הן שתי המחרוזות שמתחילות ב-'V', ולכן הן מוסרות מה-a_deque_object.

כאן הפרדיקט המשמש לסינון נתונים אלה הוא - מסנן -> (filter.charAt(0) == 'V')

כאן המסנן מתייחס למשתנה.

הֶסבֵּר

שורה 9,18:

צור ArrayDeque בשם a_dequeobject עם סוגי מחרוזות והצג אותו

שורה 21,23:

כעת סנן את a_deque_object עם הפרדיקט - מסנן -> (filter.charAt(0) == 'V')

דוגמה 2

כאן, ניצור אוסף ArrayDeque עם 5 אלמנטים מסוג Integer ונסיר את הערכים שגדולים מ-200.

יְבוּא java.util.* ;
יְבוּא java.util.ArrayDeque ;

פּוּמְבֵּי מעמד רָאשִׁי
{
פּוּמְבֵּי סטָטִי בָּטֵל רָאשִׁי ( חוּט [ ] args ) {

// צור 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. removeIf ( לְסַנֵן -> ( לְסַנֵן > 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 ;

פּוּמְבֵּי מעמד רָאשִׁי
{
פּוּמְבֵּי סטָטִי בָּטֵל רָאשִׁי ( חוּט [ ] args ) {

// צור 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. removeIf ( ריק ) ;

}
}

תְפוּקָה:

אנחנו יכולים לראות את זה NullPointerException מורם.

סיכום

ראינו כיצד להסיר את האלמנטים מאובייקט אוסף ArrayDeque עם Predicate באמצעות שיטת removeIf() . ודא שאינך מציין null, מכיוון שהתוצאה היא NullPointerException. דנו בשתי דוגמאות על ידי החלת תנאים שונים בפרדיקט וגם הדגמנו את NullPointerException.