סטים ב- Java: דע כיצד לעבוד עם ממשק Java Set



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

Framework Java Collection Framework מכיל ממשקים רבים, אחד מהם הוא ממשק Set. מאמר זה ייתן לך מבוא מפורט ל- Sets In . להלן עצות הסקירה במאמר זה:

סטים בג'אווה

ההגדרה מוגדרת כאוסף של אלמנטים לא מסודרים שבהם לא ניתן לשמור ערכים כפולים. זה מרחיב את האוסף וכך את כל השיטות זמינים בממשק Set. הוא מיושם על ידי HashSet, LinkedHashSet או TreeSort.





סטים - אוספי ג

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



    • סט האש עושה לא נותנים שום ערבות לגבי סדר האלמנטים בזמן איטרציה של הסט.
    • LinkedHashSet מצד שני, מעניק אחריות לגבי סדר האלמנטים תוך איטרציה שלהם.
    • TreeSet מספק ערבות, אך הסט ממוין על פי הסדר הטבעי, או על ידי יישום משווה ספציפי.

כיצד ליצור סט?

הקוד הבא מגדיר את השיטה ליצירת קבוצה חדשה:

הגדר מספר = חדש HashSet ()



השתמשנו גנריות כדי להכריז על הסט של סוג שלם.

הגדר שיטות ב- Java:

אנו יכולים לבצע פעולות מרובות על סט כדלקמן:

הוסף שיטה

שיטת הוספת מכניסה אלמנט ל- . בקוד שלמטה, אנו מכניסים קבוצה של שמות.

הגדר strName = חדש HashSet () strName.add ('John') strName.add ('Doe') System.out.println (strName)

מחרוזת php לנתח למערך

תְפוּקָה:

[פלוני אלמוני]

הסר את השיטה

שיטה זו מסירה את הרכיב שצוין מהסט.

ייבא java.util. * מחלקה ציבורית ראשי {ציבורי ריק סטטי ראשי (טענות מחרוזת []) {// יצירת ערכת סט קבוצה ריקה = HashSet חדש () // הוספת אלמנטים לסט הסט. הוסף ('ג'ון') .add ('Doe') // הצג את הסט System.out.println ('Set:' + set) // הסרת האלמנט 'Doe' באמצעות remove () שיטת set.remove ('Doe') // הצגת מערכת שונה System.out.println ('Set:' + set)}}

תְפוּקָה:

תפאורה: [ג'ון, איילה]

תפאורה: [ג'ון]

הוא תואר שני לתואר שני

האם שיטה ריקה

שיטת בדיקה זו קובעת אם ה- ריק הוא לא. זה מחזיר נכון אם הסט ריק, ושקר אם אחרת.

ייבא java.io. * ייבא java.util. * מחלקה ציבורית ראשי {public static void main (String args []) {Set javaSet = new HashSet () // הוספת אלמנטים להגדרת javaSet.add ('John') javaSet .add ('איילה') // להציג את הסט System.out.println ('Set:' + javaSet) // בודק אם הערכה ריקה System.out.println ('Set Empty:' + javaSet.isEmpty () ) // ניקוי הסט באמצעות שיטת clear () javaSet.clear () // בדיקה האם הערכה ריקה System.out.println ('סט ריק:' + javaSet.isEmpty ())}}

תְפוּקָה:

תפאורה: [ג'ון, איילה]

סט ריק: שקר

סט ריק: נכון

שיטת גודל

שיטת size () מחזירה את גודל הסט, כלומר מספר האלמנטים הקיימים בערכה.

ייבוא ​​java.util. * מחלקה ציבורית ראשי {ציבורי ריק סטטי ראשי (טענות מחרוזת []) {// יצירת סט סט סט = חדש HashSet () set.add ('ג'ון') set.add ('Doe') מערכת .out.println ('Set:' + set) // הצגת גודל מערכת System.out.println שנשלחה ('גודל הסט:' + set.size ())}}

תְפוּקָה:


תפאורה: [ג'ון, איילה]

גודל הסט: 2

מתבשל מעל סט

אנו יכולים לחזור על כל האלמנטים הקיימים בערכה בשיטה הבאה:

ייבא java.util. * ייבא java.util.HashSet מחלקה ציבורית ראשי {public static void main (String args []) {// יצירת HashSet HashSet javaSet = חדש HashSet () javaSet.add ('John') javaSet.add ('Doe') // הצגת הסט System.out.println ('HashSet:' + javaSet) // יצירת איטרטור איטרטור itr = javaSet.iterator () // הצגת הערכים לאחר איטרציה System.out.println (' ערכי איטרטור: ') while (itr.hasNext ()) {System.out.println (itr.next ())}}

תְפוּקָה:

HashSet: [ג'ון, איילה]

ערכי אינטרציה:

ג'ון

לַעֲשׂוֹת

מחפש בסט

אנו משתמשים בשיטה כוללת () כדי לקבוע אם הערכה מכילה אלמנט שצוין. מחזירה אמת אם האלמנט נמצא ושקר אחרת.

ייבא java.io. * ייבא java.util.HashSet מחלקה ציבורית ראשי {public static void main (String args []) {// יצירת HashSet HashSet javaSet = חדש HashSet () javaSet.add ('John') javaSet.add ('איילה') // הצגת מערכת HashSet.out.println ('HashSet:' + javaSet) // בדיקת 'John' בערכה System.out.println ('John in set:' + javaSet.contains ( 'ג'ון')) // בדיקת 'לוז' בערכת System.out.println ('לוז בערכה:' + javaSet.contains ('לוז'))}}

תְפוּקָה:

HashSet: [ג'ון, איילה]

ג'ון בתפאורה: נכון

קו g + goto

לוז בסט: שקר

פעולה בסיסית על סטים בג'אווה

  • הִתאַחֲדוּת: כדי להוסיף סט אחד למשנהו, אנו משתמשים בפעולת האיחוד
  • הִצטַלְבוּת: כדי לשמור על הערכים המשותפים משתי הערכות, אנו משתמשים בפעולת הצומת.
  • הֶבדֵל: כדי להסיר את הערכים של קבוצה אחת, מהקבוצה השנייה, משתמשים בפעולת ההפרש.

דוגמא

ייבא java.util. * מחלקה ציבורית ראשי {ציבורי ריק סטטי ראשי (טענות מחרוזת []) {הגדר d = חדש HashSet () d.addAll (Arrays.asList (שלם חדש [] {3, 2, 1, 9, 6 , 4, 0})) הגדר e = HashSet חדש () e.addAll (Arrays.asList (מספר שלם חדש [] {3, 1, 9, 5, 2, 0, 7,})) // איחוד של פעולת האיחוד = HashSet (d) union.addAll (e) System.out.println חדש ('Union:' + union) // פעולת צומת הגדר צומת = HashSet (d) intersection.retainAll (e) System.out.println (' צומת: '+ צומת) // פעולת ההבדל הגדר הבדל = HashSet חדש (ד) הבדל. הסר כל (ה) System.out.println (' הבדל: '+ הבדל)}}

תְפוּקָה:

האיחוד: [0, 1, 2, 3, 4, 5, 6, 7, 9]

צומת: [0, 1, 2, 3, 9]

ההבדל: [4, 6]

השיטות והפעולות המוזכרות בשיטה הופכות את ממשק הסט להגדיר אלמנטלי ויעיל באופיו.

לפיכך הגענו לסוף מאמר זה בנושא 'סטים בג'אווה'. אם ברצונך ללמוד עוד, עיין ב מאת אדוריקה, חברת למידה מקוונת אמינה. קורס ההכשרה וההסמכה של Java J2EE ו- SOA של אדוריקה נועד להכשיר אתכם למושגי הליבה והמתקדמים של Java יחד עם מסגרות Java שונות כמו Hibernate & Spring.

יש לך שאלה עבורנו? אנא הזכיר זאת במדור ההערות במאמר 'sets in java' ונחזור אליך בהקדם האפשרי.