1 تحويل مجموعة إلى قائمة
قم باستدعاء الطريقة الثابتة كقائمة لفئة المصفوفات.
asList
قائمة <T> ثابتة <T> asList(T... a) تُرجع قائمة ذات حجم ثابت مدعومة بالمصفوفة المحددة (يتم إجراء التغييرات على القائمة التي يتم إرجاعها "للكتابة من خلال" المصفوفة.) تعمل هذه الطريقة كجسر بين واجهات برمجة التطبيقات المستندة إلى المصفوفة والقائمة على المجموعة، بالاشتراك مع Collection.toArray(). القائمة التي تم إرجاعها قابلة للتسلسل وتنفذ RandomAccess.
توفر هذه الطريقة أيضًا طريقة ملائمة لإنشاء قائمة ذات حجم ثابت تمت تهيئتها لتحتوي على عدة عناصر:
List<String> stooges = Arrays.asList("Larry", "Moe", "Curly");
حدود:
أ - المصفوفة التي سيتم من خلالها دعم القائمة
العوائد:
عرض قائمة للمصفوفة المحددة
الاستخدام: توفر واجهة برمجة التطبيقات (API) طريقة للاستخدام. رمز المثال الأكثر استخدامًا:
انسخ رمز الكود كما يلي:
String[] arr = new String[] {"str1"، "str2"};
List<String> list = Arrays.asList(arr);
2 تحويل القائمة إلى صفيف
تأخذ القائمة هنا ArrayList كمثال. توفر واجهة برمجة التطبيقات الخاصة بـ ArrayList وظيفتين يمكن استخدامهما.
toArray
public Object[] toArray() يُرجع مصفوفة تحتوي على كافة العناصر الموجودة في هذه القائمة بالتسلسل الصحيح (من العنصر الأول إلى العنصر الأخير).
سيكون المصفوفة التي تم إرجاعها "آمنة" حيث لا يتم الاحتفاظ بأي مراجع لها من خلال هذه القائمة (بمعنى آخر، يجب أن تقوم هذه الطريقة بتخصيص مصفوفة جديدة).
تعمل هذه الطريقة كجسر بين واجهات برمجة التطبيقات القائمة على المصفوفة والقائمة على المجموعة.
محدد بواسطة:
toArray في مجموعة الواجهة<E>
محدد بواسطة:
toArray في قائمة الواجهة<E>
التجاوزات:
toArray في فئة AbstractCollection<E>
العوائد:
مصفوفة تحتوي على كافة العناصر الموجودة في هذه القائمة بالتسلسل الصحيح
أنظر أيضا:
Arrays.asList(كائن[])
-------------------------------------------------- ----------------------------------
toArray
public <T> T[] toArray(T[] a) يُرجع مصفوفة تحتوي على كافة العناصر الموجودة في هذه القائمة بالتسلسل الصحيح (من العنصر الأول إلى العنصر الأخير)؛ ونوع وقت تشغيل المصفوفة التي تم إرجاعها هو نوع المصفوفة المحددة. إذا كانت القائمة تناسب المصفوفة المحددة، فسيتم إرجاعها فيها، وإلا، فسيتم تخصيص مصفوفة جديدة بنوع وقت التشغيل للمصفوفة المحددة وحجم هذه القائمة.
إذا كانت القائمة تناسب المصفوفة المحددة مع وجود مساحة كافية (على سبيل المثال، يحتوي المصفوفة على عناصر أكثر من القائمة)، فسيتم تعيين العنصر الموجود في المصفوفة مباشرة بعد نهاية المجموعة على القيمة الخالية (وهذا مفيد في تحديد الطول من القائمة فقط إذا كان المتصل يعلم أن القائمة لا تحتوي على أي عناصر فارغة.)
محدد بواسطة:
toArray في مجموعة الواجهة<E>
محدد بواسطة:
toArray في قائمة الواجهة<E>
التجاوزات:
toArray في فئة AbstractCollection<E>
حدود:
أ - المصفوفة التي سيتم تخزين عناصر القائمة فيها، إذا كانت كبيرة بما يكفي، وإلا فسيتم تخصيص مصفوفة جديدة من نفس نوع وقت التشغيل لهذا الغرض.
العوائد:
مصفوفة تحتوي على عناصر القائمة
رميات:
ArrayStoreException - إذا كان نوع وقت التشغيل للصفيف المحدد ليس نوعًا فائقًا لنوع وقت التشغيل لكل عنصر في هذه القائمة
NullPointerException - إذا كانت المصفوفة المحددة فارغة
الاستخدام: رمز المثال:
انسخ رمز الكود كما يلي:
List<String> list = new ArrayList<String>();
list.add("str1");
list.add("str2");
int size = list.size();
String[] arr = (String[])list.toArray(new String[size]);// باستخدام الواجهة الثانية، تكون القيمة المرجعة والمعلمات كلاهما نتيجة