Avatar ·

متى تستخدم LinkedList بدلاً من ArrayList في Java؟

مرحباً بالجميع! أنا مبتدئ في Java وأحاول فهم المجموعات. قرأت أن هناك ArrayList وLinkedList، لكنني لا أستطيع فهم متى يكون من الأفضل استخدام أي منهما. على سبيل المثال، أحتاج إلى تخزين قائمة من المهام في تطبيق للتخطيط. غالباً ما أضيف مهاماً جديدة في نهاية القائمة وأحياناً أحذف من المنتصف. إليك مثال على الكود الخاص بي: ```java List tasks = new ArrayList<>(); tasks.add("شراء البقالة"); tasks.add("أداء الواجب المنزلي"); tasks.add("الاتصال بصديق"); tasks.add("الذهاب إلى صالة الألعاب الرياضية"); // أحياناً أحذف مهمة من المنتصف tasks.remove(1); // أحذف "أداء الواجب المنزلي" ``` مع ArrayList كل شيء يعمل، لكنني سمعت أن الحذف من المنتصف عملية بطيئة. يبدو أن LinkedList أفضل للإضافات والحذف المتكررة. لكن لديه تكاليف إضافية أكبر على الذاكرة. وأيضاً: أحتاج غالباً إلى المرور عبر القائمة وعرض المهام على الشاشة. لهذا أستخدم حلقة for-each: ```java for (String task : tasks) { System.out.println(task); } ``` لكن