המר מפה למערך, רשימה או הגדר ב- Java
1. סקירה כללית
מאמר קצר זה יראה כיצד להמיר את הערכים של a מַפָּה ל מַעֲרָך, א רשימה או א מַעֲרֶכֶת באמצעות Java רגיל כמו גם דוגמה מהירה מבוססת גויאבה.
מאמר זה הוא חלק מסדרת "Java - Back to Basic" כאן בבלדונג.
2. מפה ערכים למערך
ראשית, בואו נסתכל על המרת ערכי המפה למערך, באמצעות ג'אווה רגילה:
@ מבחן חלל ציבורי givenUsingCoreJava_whenMapValuesConvertedToArray_thenCorrect () {Map sourceMap = createMap (); ערכי אוסף = sourceMap.values (); מחרוזת [] targetArray = values.toArray (מחרוזת חדשה [0]); }
ציין זאת toArray (T חדש [0]) היא הדרך המועדפת להשתמש בשיטה על פני toArray (T חדש [גודל]). כפי שמוכיח אלכסיי שיפילב בפוסט בבלוג שלו, זה נראה מהיר יותר, בטוח ונקי יותר.
3. מפה ערכים לרשימה
לאחר מכן, בואו להמיר את הערכים של מפה לרשימה - באמצעות Java רגיל:
@Test הציבור בטל givenUsingCoreJava_whenMapValuesConvertedToList_thenCorrect () {Map sourceMap = createMap (); רשימת targetList = ArrayList חדש (sourceMap.values ()); }
ושימוש בגויאבה:
@ מבחן חלל ציבורי givenUsingGuava_whenMapValuesConvertedToList_thenCorrect () {Map sourceMap = createMap (); רשימת targetList = Lists.newArrayList (sourceMap.values ()); }
4. ערכי מפה להגדיר
לבסוף, בואו להמיר את ערכי המפה לסט, באמצעות Java רגיל:
@Test ציבורי בטל givenUsingCoreJava_whenMapValuesConvertedToS_thenCorrect () {Map sourceMap = createMap (); הגדר targetSet = HashSet חדש (sourceMap.values ()); }
5. מסקנה
כפי שאתה יכול לראות, ניתן לבצע את כל ההמרות בשורה אחת, תוך שימוש בספריית האוספים הרגילה של Java בלבד.
יישום כל הדוגמאות וקטעי הקוד ניתן למצוא בפרויקט GitHub - זהו פרויקט מבוסס Maven, כך שיהיה קל לייבא ולהפעיל אותו כפי שהוא.