CodeGym /בלוג Java /Random-HE /המרת רשימה למערך ב-Java
John Squirrels
רָמָה
San Francisco

המרת רשימה למערך ב-Java

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

ההבדל בין רשימה למערך

רשימה מַעֲרָך
ניתן לשנות את גודל הרשימה לא ניתן לשנות את הגודל של מערך
אתה לא יכול לאחסן טיפוסים פרימיטיביים ברשימה אתה יכול לאחסן טיפוסים פרימיטיביים במערך
אתה יכול להשתמש בגנריות עם רשימה אתה לא יכול להשתמש ב-Generics עם Array
צורך יותר זיכרון צורך פחות זיכרון

המרת רשימה למערך עם פונקציית ספרייה

לרשימה יש שיטה toArray() הממירה ישירות את התוכן של כל רשימה למערך תוך שמירה על מיקום הטקסט במערך כפי שהיה ברשימה המקורית. הנה האלגוריתם/השלבים להמרת רשימה למערך ב-java באמצעות פונקציית הספרייה המובנית הזו.
  1. אתחול ArrayList.
  2. הוסף אלמנטים לרשימה באמצעות שיטת list.add(data_type) .
  3. צור מערך באותו גודל כמו הרשימה.
  4. המר את הרשימה למערך על ידי שימוש בשם המשתנה של המערך שנוצר בשלב 3 כארגומנט.
  5. הדפס את תוכן המערך.
הקוד המיישם את השלבים הללו ניתן להלן.
import java.util.ArrayList;
public class convertListToArray {

    public static void main(String[] args) {

        //Converting List to Array With Library Function

        //Declaration of Array List
        ArrayList<String> sampleList = new ArrayList<String>();

        //Adding Elements to Array List
        sampleList.add("California");
        sampleList.add("Texas");
        sampleList.add("Illinois");
        sampleList.add("Massachusetts");
        sampleList.add("Florida");
        sampleList.add("Virginia");
        sampleList.add("Colorado");


        //Printing the Array List
        System.out.println("Elements of List: " + sampleList);

        //Declaring Array with Equal Size to the List
        String[]arr = new String [sampleList.size()];

        //Converting List to Array
        sampleList.toArray(arr);

        //Printing the Array
        System.out.print("Elements of Array: ");
        for (int i = 0 ; i < arr.length ; i++){
            System.out.print(arr[i] + "  ");
        }
    }
}

המרת רשימה למערך ללא פונקציית ספרייה

לפעמים, ייתכן שתהיה דרישה להמיר את הרשימה למערך מבלי להשתמש בפונקציות מובנות. הבעיה שלפניכם עשויה להשתמש בהגבלות מסוימות מבחינת פונקציות הספרייה. דרישה זו נפוצה עבור תלמידי תכנות שמעודדים אותם לעבוד ללא פונקציות ספרייה כדי לעזור להם ללמוד את פעולתן הפנימית של פונקציות אלו לפני הטמעתם. במקרים כאלה, תוכל להשתמש בשלבים הבאים כדי להמיר רשימה למערך ב-java ללא פונקציית ספרייה כלשהי.
  1. אתחול ArrayList.
  2. הוסף אלמנטים לרשימה באמצעות שיטת list.add(data_type) .
  3. צור מערך באותו גודל כמו הרשימה.
  4. צור לולאת for שתעבור דרך כל אלמנט של ArrayList ותעביר אותו ל- Array[index] דרך הפונקציה list.get(index) .
  5. הדפס את התוכן של המערך כדי להראות שאתה למעשה ממיר את הרשימה למערך.
הקוד ליישום שלבים אלה ניתן להלן.
import java.util.ArrayList;
public class converListToArray2 {

    public static void main(String[] args) {
        //Converting List to Array Without Library Functions

        //Declaration of Array List
        ArrayList<String> sampleList = new ArrayList<String>();

        //Adding Elements to Array List
        sampleList.add("California");
        sampleList.add("Texas");
        sampleList.add("Illinois");
        sampleList.add("Massachusetts");
        sampleList.add("Florida");
        sampleList.add("Virginia");
        sampleList.add("Colorado");


        //Printing the Array List
        System.out.println("Elements of List: " + sampleList);

        //Declaring Array with Equal Size to the List
        String[]arr = new String [sampleList.size()];

        //Converting to Array
        for (int i = 0 ; i < arr.length ; i++){
            arr[i] = sampleList.get(i);
        }

        //Printing the Array
        System.out.print("Elements of Array: ");
        for (int i = 0 ; i < arr.length ; i++){
            System.out.print(arr[i] + "  ");
        }
    }
}
באופן דומה, אם גם אתה תוהה כיצד להמיר מערך לרשימה, תוכל לעשות זאת על ידי שימוש בשיטה המובנית Array.asList() או איטרציה דרך המערך ואחסון ערכים בכל אינדקס ברשימה.
הערות
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION