تحويل المصفوفة إلى قائمة (List) في Java: كيف تفعل ذلك بشكل صحيح وبدون أخطاء؟
مرحباً بالجميع! لقد بدأت مؤخراً في تعلم Java وواجهت مهمة: أحتاج إلى تحويل مصفوفة عادية (مثل String[]) إلى قائمة (List). يبدو الأمر بسيطاً، لكني صادفت بعض المزالق.
لنفترض أن لدي مصفوفة من السلاسل النصية:
String[] array = {"a", "b", "c"};
حاولت استخدام طريقة Arrays.asList():
List list = Arrays.asList(array);
يبدو أن كل شيء يعمل، لكن عندما حاولت إضافة عنصر جديد إلى القائمة:
list.add("d");
حصلت على استثناء UnsupportedOperationException. لماذا يحدث ذلك؟ فالقائمة (List) يجب أن تدعم إضافة العناصر.
كما سمعت أن هناك طريقة عبر new ArrayList<>(Arrays.asList(...)). ما الفرق بينها وبين الاستدعاء البسيط لـ Arrays.asList()؟
ونقطة أخرى: إذا قمت بتعديل عنصر في المصفوفة الأصلية، هل سيتعدل في القائمة؟ والعكس صحيح؟
سأكون ممتناً لشرح مفصل مع أمثلة. أريد أن أفهم ليس فقط "كيف تفعل"، بل أيضاً لماذا.