מהו התהליך לסינון רשימה ב-Java

Mhw Hthlyk Lsynwn Rsymh B Java



' סינון רשימה ” ב-Java שימושי למפתחים שעובדים בעיקר עם נתונים. זה נכנס לתוקף בעת עדכון פונקציונליות הקוד, מחיקת הרשומות או ניצול הנתונים הכלולים ברשימה נפרדת. בתרחישים כאלה, גישת סינון הרשימות מסייעת בניהול יעיל של הזמן והזיכרון בקצה המפתחים.

בלוג זה ידריך לסנן רשימת Java.







מהו התהליך לסינון רשימת Java?

ניתן לסנן רשימה ב-Java באמצעות הגישות הבאות:



ייבא את החבילה הנתונה למטה בכל הדוגמאות של בלוג זה כדי לגשת לכל הפונקציונליות בתוך ' java.util חבילה:



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

גישה 1: סנן רשימה ב-Java באמצעות לולאת 'עבור'.

גישה זו מיישמת את ' ל ' לולאה על ה'רשימה' שנוצרה כך ש' חדש רשימת מערך ' מצורף לפריט/ים שסוננו.





דוגמא

סקירה כללית של שורות הקוד המפורטות להלן:

פּוּמְבֵּי מעמד רשימת סינון {
פּוּמְבֵּי סטָטִי בָּטֵל רָאשִׁי ( חוּט [ ] args ) {
רשימה < חוּט > נתון רשימה = מערכים . asList ( 'עֵט' , 'מַחַק' , 'מחדד' ) ;
מערכת . הַחוּצָה . println ( 'רשימה נתונה ->' + נתון רשימה ) ;
רשימה < חוּט > listFilter = חָדָשׁ רשימת מערך <> ( ) ;
ל ( חוּט פריט : נתון רשימה ) {
אם ( פריט. מתחיל עם ( 'ו' ) ) {
listFilter. לְהוֹסִיף ( פריט ) ;
} }
מערכת . הַחוּצָה . println ( 'רשימה מסוננת -> ' + listFilter ) ;
} }

לפי גוש הקוד הזה:



  • צור רשימה של ' חוּט ” סוגי נתונים בעלי ערכי המחרוזת המצוינים והצג אותם.
  • לאחר מכן, צור ' חדש רשימת מערך 'שם' listFilter ' כדי לצרף אותו עם הפריטים שסוננו מהרשימה הקודמת.
  • כעת, החל את ' ל ' לולאה כדי לחזור על הרשימה הראשונה שהוגדרה ולסנן אותה בהתבסס על התנאי המוחל, כלומר, פריטים המתחילים עם התו ' ו '.
  • כאשר התנאי מתקיים, הרשימה המסוננת תתווסף למחרוזת המסוימת.

תְפוּקָה

כפי שניתן לראות, לרשימה המסוננת מצורפת המחרוזת העומדת בתנאי שהוחל.

גישה 2: סינון רשימה ב-Java באמצעות לולאת 'while'.

בגישה זו, ה' בזמן ניתן ליישם לולאה יחד עם ' איטרטור ' מחלקה והשיטות שלה לסינון הרשימה המסופקת. שיטות אלו כוללות את ' hasNext()' ו-'next() ” שיטות המעוררות את הערך הבא מהרשימה אם יש כזה.

תחביר

בוליאני hasNext ( )

שיטה זו מחזירה תוצאה בוליאנית, כלומר, 'אמת או שקר' .

פּוּמְבֵּי הבא ( )

כאן, ' א ' מתאים ל' ממשק איטרטור '.

דוגמא

כעת, המשך לקוד הבא:

פּוּמְבֵּי מעמד רשימת סינון {
פּוּמְבֵּי סטָטִי בָּטֵל רָאשִׁי ( חוּט [ ] args ) {
רשימה < חוּט > נתון רשימה = חָדָשׁ רשימת מערך <> (
מערכים . asList ( 'ג'אווה' , 'תִכנוּת' , 'ב' , 'לינוקס' ) ) ;
מערכת . הַחוּצָה . println ( 'רשימה נתונה ->' + נתון רשימה ) ;
איטרטור < חוּט > איטרציה = נתון רשימה. איטרטור ( ) ;
בזמן ( איטרציה. hasNext ( ) ) {
חוּט curr = איטרציה. הַבָּא ( ) ;
אם ( curr. מתחיל עם ( 'פ' ) ) {
איטרציה. לְהַסִיר ( ) ;
} }
מערכת . הַחוּצָה . println ( 'רשימה מסוננת -> ' + נתון רשימה ) ;
} }

לפי הקוד לעיל:

  • ליצור ' רשימת מערך ' של ה ' חוּט ' הקלד עם הערכים שסופקו והצג אותו.
  • כעת, חזור על רכיבי הרשימה באמצעות ' איטרטור ' מעמד.
  • כמו כן, החל את ' בזמן ' לולאה כדי לבדוק אם יש רכיב הבא ברשימה באמצעות ' hasNext() שיטת ' ואחזר אותה בהתבסס על ' הַבָּא() ' שיטה.
  • כעת, בדוק אם האלמנט האיטרטיבי ברשימה עומד בתנאי המוצהר, כפי שנדון בדוגמה הקודמת.
  • אם התנאי מתקיים, הרכיב המסוים הזה מוסר במקום והרשימה מסוננת.

תְפוּקָה

כפי שניתח, האלמנט העומד בתנאי שצוין יוסר מהרשימה כראוי.

כלול את החבילה הנוספת להלן בגישה הבאה כדי לאפשר עבודה עם ' אספנים ' מעמד:

יְבוּא java.util.stream.Collectors ;

גישה 3: סינון רשימה ב-Java באמצעות שיטת 'filter()'.

ה 'לְסַנֵן()' השיטה משמשת לסינון רכיבי זרם בהתבסס על הפרדיקט הנתון. ניתן להשתמש בשיטה זו כדי לסנן זרם של רשימות.

תחביר

זרם < איקס > לְסַנֵן ( לְבַסֵס סוּפֶּר איקס > לפני )

בתחביר זה, ' לפני ' מתאים ל' לְבַסֵס ' שיכול לקחת ביטוי למבדה כטיעון.

דוגמא

שקול את הקוד הבא:

פּוּמְבֵּי מעמד רשימת פילטרים2 {
פּוּמְבֵּי סטָטִי בָּטֵל רָאשִׁי ( חוּט [ ] args ) {
רשימה < חוּט > נתון רשימה = מערכים . asList ( 'נייד' , 'מחשב נייד' , 'PC' ) ;
מערכת . הַחוּצָה . println ( 'רשימה נתונה ->' + נתון רשימה ) ;
חוּט listFilter = נתון רשימה. זרם ( ) . לְסַנֵן ( פריט -> פריט. מתחיל עם ( 'M' ) )
. לאסוף ( אספנים. הִצטָרְפוּת ( ',' , '[' , ']' ) ) ;
מערכת . הַחוּצָה . println ( 'רשימה מסוננת -> ' + listFilter ) ;
} }

בשורות קוד אלו:

  • באופן דומה, צור ' רשימה ' ולהציג את ערכיו.
  • לאחר מכן, השתמש ב' לְסַנֵן() שיטת ' לסנן את רכיבי הזרם ברשימה בהתבסס על המצב הנדון ולציין את המוסכמות להכלת הפריטים המסוננים באמצעות ' אספנים 'כיתה, בהתאמה.
  • לבסוף, החזר את הרשימה המסוננת.

תְפוּקָה

בתוצאה זו, ניתן לרמוז שמצורפת רשימה חדשה עם הערך המקיים את התנאי המוצהר.

סיכום

ניתן לסנן רשימה ב-Java באמצעות ' for', לולאת 'while', או 'filter() ' שיטה. כל הגישות הללו מסננות רשימה על סמך תנאי שצוין ישירות או באמצעות ביטוי למבדה. מאמר זה הדגים את הגישות לסינון רשימת Java.