Programming Basics SQL HTML CSS JavaScript React Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Linux Learn Typing

Javaالإنترفيس Collection في جافا

  • مقدمة
  • دوال الإنترفيس Collection
  • مثال شامل

مقدمة

الإنترفيس Collection مصمم بشكل عام لاحتواء الأشياء المشتركة في جميع الـ Collection.
إذاً هو الأساس لأي إنترفيس يمثل Collection حيث أن جميع الـ Collection ترث منه.

بما أن جميع الـ Collection ترث منه, ننصحك بفهم دواله بشكل جيد لأنها ستمر معك في كل كلاس موجود في الـ Collection.

في حال قمت باستدعاء أي دالة فيه بشكل خاطئ سيتم رمي الإستثناء UnsupportedOperationException.

دوال الإنترفيس Collection

الجدول التالي يحتوي على دوال الإنترفيس Collection.

الدالة مع تعريفها
1 public boolean add(Object o) تضيف كائن جديد في الكائن الذي قام باستدعائها.
ترجع true إذا تمت الإضافة بنجاح.
2 public boolean addAll(Collection c) تضيف جميع العناصر الموجودة في الكائن c بالترتيب في آخر الكائن الذي قام باستدعائها.
ترجع true إذا تمت الإضافة بنجاح.
3 public void clear() تمسح جميع العناصر الموجودة في الكائن الذي قام باستدعائها.
4 public boolean contains(Object obj) ترجع true إذا كان الكائن الذي قام باستدعائها يحتوي على الكائن الذي نضعه لها كـ Argument.
5 public boolean containsAll(Collection c) ترجع true إذا كان الكائن الذي قام باستدعائها يحتوي على جميع العناصر الموجودة في الكائن c.
6 public boolean equals(Object obj) ترجع true في حال كان الكائن الذي قام باستدعائها يتطابق مع الكائن الذي نمرره لها كـ Argument.
7 public int hashCode() ترجع الـ Hash Code للكائن الذي قام باستدعائها.
8 public boolean isEmpty() ترجع true في حال كان الكائن الذي قام باستدعائها فارغاً.
9 public Iterator iterator() ترجع كائن نوعه Iterator يحتوي على جميع عناصر الكائن الذي قام باستدعائها.
10 public boolean remove(Object o) تحذف أول عنصر يتم إيجاده في الكائن الذي قام باستدعائها في حال كان يتطابق مع الكائن الذي نمرره لها كـ Argument.
ترجع true إذا تم حذف العنصر بنجاح.
11 public boolean removeAll(Collection c) تحذف مجموعة متتالية من العناصر الموجود في الكائن الذي قام باستدعائها في حال كانت تتطابق مع كائن الـ Collection الذي نمرره لها كـ Argument.
ترجع true إذا تم حذف جميع العناصر بنجاح.
12 public boolean retainAll(Collection c) تبقي عناصر الكائن الذي قام باستدعائها في حال كانت موجودة في عناصر الكائن c الذي نمرره لها كـ Argument, و تحذف جميع العناصر الأخرى.
13 public int size() ترجع عدد العناصر الموجودة في كائن الـ Interface.
14 public Object[] toArray() ترجع مصفوفة نوعها Object تحتوي على جميع العناصر الموجودة في الكائن الذي قام باستدعائها.
15 public Object[] toArray(Object array[]) ترجع مصفوفة نوعها Object تحتوي على جميع عناصر الكائن الذي قام باستدعائها و التي عندها نفس نوع المصفوفة array التي نمررها لها كـ Argument.

مثال شامل

في المثال التالي قمنا بإنشاء ثلاث كائنات من ثلاث كلاسات مختلفة ترث من الإنترفيس Collection.
لاحظ أننا استخدمنا الدالة add() التي ورثتها الكائنات في الأساس من الإنترفيس Collection.

مثال

Main.java
import java.util.*;               // util هنا قمنا باستدعاء جميع الكلاسات و الإنترفيسات الموجودة في الحزمة
 
public class Main {
 
    public static void main(String[] args) {
 
        // وضعنا فيه ثلاث كائنات o1 إسمه Vector هنا قمنا بإنشاء كائن من الكلاس
        Vector o1 = new Vector();
        o1.add("A");
        o1.add("B");
        o1.add("C");
 
        // وضعنا فيه ثلاث كائنات o2 إسمه HashSet هنا قمنا بإنشاء كائن من الكلاس
        HashSet o2 = new HashSet();
        o2.add("A");
        o2.add("B");
        o2.add("C");
 
        // وضعنا فيه ثلاث كائنات o3 إسمه LinkedList هنا قمنا بإنشاء كائن من الكلاس
        LinkedList o3 = new LinkedList();
        o3.add("A");
        o3.add("B");
        o3.add("C");
 
        // o3 و o2 و o1 هنا قمنا بعرض محتويات الكائنات
        System.out.println("Vector elements: " + o1);
        System.out.println("HashSet elements: " + o2);
        System.out.println("LinkedList elements: " + o3);
 
    }
 
}

سنحصل على النتيجة التالية عند التشغيل.

Vector elements: [A, B, C]
HashSet elements: [A, B, C]
LinkedList elements: [A, B, C]