0Pricing
Java Academy · درس

أدوات Collections

استخدم الأدوات المفيدة من java.util.Collections: sort وreverse وshuffle وmin/max وfrequency وaddAll وطرق العرض غير القابلة للتعديل.

أدوات Collections درس مجاني في Java Academy على CoddyKit. هذا هو الدرس 3 من أصل 3. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Java Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Java Academy 3 دروس في المجموع.

نظرة عامة

توفر الفئة المساعدة Collections أدوات صغيرة توفر الوقت: sort، وreverse، وshuffle، وmin/max، وfrequency، وaddAll، وunmodifiableList. توجد هذه الأدوات في java.util.Collections.

العمليات في المكان نفسه

تعدّل دوال In-place (sort وreverse وshuffle) القائمة List المعطاة مباشرةً. وبالنسبة إلى المجموعات Set، انسخوا العناصر إلى List قبل فرزها. ولتحسين الوضوح، اطبعوا القائمة قبل التعديل وبعده.

الشفرة: sort وreverse وshuffle

يستخدم sort الترتيب الطبيعي، ويعكس reverse ترتيب القائمة، بينما يجعل shuffle ترتيبها عشوائيًا. وتعدّل هذه الدوال جميعًا نسخة List نفسها.

public class Main {
  public static void main(String[] args) {
    java.util.List<String> names = new java.util.ArrayList<>();
    names.add("Bob"); names.add("Ada"); names.add("Cyd");

    System.out.println("orig=" + names);
    java.util.Collections.sort(names);          // natural order (A–Z)
    System.out.println("sorted=" + names);
    java.util.Collections.reverse(names);       // reverse order
    System.out.println("reversed=" + names);
    java.util.Collections.shuffle(names);       // random order
    System.out.println("shuffled=" + names);
  }
}

Min/Max والتكرار

تختار min وmax العناصر وفق الترتيب الطبيعي. وتحسب frequency(list, x) عدد مرات ظهور عنصر ما. وهذا مفيد للإحصاءات والاختبارات الصغيرة.

الشفرة: min وmax وfrequency

تعيد الأدوات قيمًا من دون تغيير List. وقد حُسبت الأرقام أعلاه باستخدام الترتيب الطبيعي للنوع Integer.

public class Main {
  public static void main(String[] args) {
    java.util.List<Integer> nums = new java.util.ArrayList<>();
    nums.add(7); nums.add(3); nums.add(7); nums.add(1);

    int min = java.util.Collections.min(nums);
    int max = java.util.Collections.max(nums);
    int freq7 = java.util.Collections.frequency(nums, 7);

    System.out.println("min=" + min + ", max=" + max + ", count(7)=" + freq7);
  }
}

الشفرة: addAll وunmodifiableList

يُعد addAll مفيدًا لإنشاء القوائم. وينشئ unmodifiableList عرضًا للقراءة فقط لمنع التغييرات غير المقصودة.

public class Main {
  public static void main(String[] args) {
    java.util.List<String> a = new java.util.ArrayList<>();
    java.util.Collections.addAll(a, "red", "green");

    java.util.List<String> b = new java.util.ArrayList<>();
    java.util.Collections.addAll(b, "blue", "green");

    // merge b into a
    a.addAll(b);
    System.out.println("merged=" + a); // [red, green, blue, green]

    // create a read-only view
    java.util.List<String> readOnly = java.util.Collections.unmodifiableList(a);
    System.out.println("readonly size=" + readOnly.size());
    // readOnly.add("x"); // would throw UnsupportedOperationException if uncommented
  }
}

تحقق من أدوات Collections

تحقق سريع: ماذا تفعل Collections.sort(list) افتراضيًا؟

مراجعة

مراجعة: استخدموا Collections لإنجاز المهام بسرعة: sort وreverse وshuffle للترتيب، وmin وmax وfrequency للإحصاءات الصغيرة، وaddAll للدمج، وunmodifiableList للعروض المخصصة للقراءة فقط.

الأسئلة الشائعة

هل درس «أدوات Collections» مجاني؟

نعم — نص درس «أدوات Collections» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Java Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Java Academy 3 دروس في المجموع.

ماذا ستتعلم في «أدوات Collections»؟

استخدم الأدوات المفيدة من java.util.Collections: sort وreverse وshuffle وmin/max وfrequency وaddAll وطرق العرض غير القابلة للتعديل. تتمرن على Java Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Java Academy؟

لا تُشترط خبرة سابقة. Java Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 3.

كم من الوقت يستغرق درس «أدوات Collections»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Java Academy هذا؟

نعم. كل درس في Java Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. نظرة عامة على List وSet
  2. Iterators وحلقة for المحسّنة
  3. أدوات Collections
← العودة إلى Java Academy