English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

تعليميات Java الأساسية

تحكم في العملية Java

Java Arrays

Java موجه بالأقسام (I)

Java موجه بالأقسام (II)

Java موجه بالأقسام (III)

معالجة الاستثناءات في Java

Java List

Java Queue (الصف)

مجموعات Java Map

مجموعات Java Set

Java إدخال/إخراج (I/O)

قراء/كتابة Java

مواضيع أخرى في Java

Vector في Java

في هذا الدليل،سنتعلم عن فئة Vector وكيفية استخدامها. سنتعلم أيضًا الاختلافات بينها وبين فئة ArrayList، ولماذا يجب علينا استخدام قائمة الأعداد.

فئة Vector هي تنفيذ لـ List يسمح لنا بإنشاء شبيهArrayListمجموعة مرنة من الأعداد.

Vector في Java و ArrayList

في Java،يحقق ArrayList و Vector واجهة List ويقدمون نفس الوظائف. ولكن،يوجد بينهم بعض الاختلافات.

يزامن كل عملية منفردة في فئة Vector. مما يعني أن كل مرة نريد تنفيذ عملية على vector، يتم تطبيق Vector class على هذه العملية تلقائيًا.

هذا لأنه عند محاولة اثنين من الأطراف الوصول إلى vector في نفس الوقت، فإنه يسبب استثنائية ConcurrentModificationException. لذلك، استخدام قفل لكل عملية يقلل من كفاءة الم向量.

لكن في ArrayList، ليست الطرق متزامنة. بدلاً من ذلك، يستخدم method Collections.synchronizedList() لتزامن القائمة بأكملها.

ملاحظة:بما أن الم向量 (vector) غير آمن للتعامل مع المشاركات وغير فعال، يُنصح باستخدام ArrayList بدلاً من Vector.

إنشاء الم向量

هذا هو كيفية إنشاء vector باستخدام Java.

Vector<Type> vector = new Vector<>();

في هذا السياق، Type يمثل نوع البيانات التي يتم تخزينها في vector. على سبيل المثال،

// أنشئ vector من نوع Integer
Vector<Integer> vector = new Vector<>();
// أنشئ vector من نوع String
Vector<String> vector = new Vector<>();

طرق الم向量 (vector)

يقدم类 Vector تنفيذًا قابلاً للتوسع لجلسة List (مثل فئة ArrayList). بعض طرق Vector هي:

إضافة العناصر إلى الم向量

  • add(element) - أضف العنصر إلى الم向量 (vector)

  • add(index, element) - أضف العنصر إلى الموضع المحدد

  • addAll(vector) - أضف جميع العناصر من الم向量 (vector) إلى الم向量 الآخر (vector)

على سبيل المثال،

import java.util.Vector;
class Main {
    public static void main(String[] args) {
        Vector<String> mammals = new Vector<>();
        // استخدم طريقة add()
        mammals.add("Dog");
        mammals.add("Horse");
        // استخدم الرقم التسلسلي
        mammals.add(2, "Cat");
        System.out.println("Vector: " + mammals);
        // استخدم طريقة addAll()
        Vector<String> animals = new Vector<>();
        animals.add("Crocodile");
        animals.addAll(mammals);
        System.out.println("Vector جديد: " + animals);
    }
}

نتائج الإخراج

Vector: [كلب، حصان، قط]
Vector جديد: [تمساح، كلب، حصان، قط]

استطلاع عناصر vector

  • get(index) - عودة العنصر المحدد بالفهرس

  • iterator() - عودة كائن الاستدلال لاستطلاع عناصر الفاكسور بالترتيب

على سبيل المثال،

import java.util.Iterator;
import java.util.Vector;
class Main {
    public static void main(String[] args) {
        Vector<String> animals = new Vector<>();
        animals.add("كلب");
        animals.add("حصان");
        animals.add("قط");
        // استخدام طريقة get()
        String element = animals.get(2);
        System.out.println("العنصر في الموضع 2: " + element);
        // استخدام iterator()
        Iterator<String> iterate = animals.iterator();
        System.out.print("Vector: ");
        while(iterate.hasNext()) {
            System.out.print(iterate.next());
            System.out.print(", ");
        }
    }
}

نتائج الإخراج

العنصر في الموضع 2: قط
Vector: كلب، حصان، قط،

إزالة عنصر vector

  • remove(index) - إزالة العنصر من الموضع المحدد

  • removeAll() - إزالة جميع العناصر

  • clear() - إزالة جميع العناصر. إنه أكثر كفاءة من removeAll()

على سبيل المثال،

import java.util.Vector;
class Main {
    public static void main(String[] args) {
        Vector<String> animals = new Vector<>();
        animals.add("كلب");
        animals.add("حصان");
        animals.add("قط");
        System.out.println("Vector الأولية: " + animals);
        //استخدام طريقة remove()
        String element = animals.remove(1);
        System.out.println("مزيل العنصر: " + element);
        System.out.println("Vector جديد: " + animals);
        // استخدام clear() الطريقة
        animals.clear();
        System.out.println("Vector بعد clear(): " + animals);
    }
}

نتائج الإخراج

Vector الأولي: [Dog, Horse, Cat]
العنصر المزيل: Horse
Vector جديد: [Dog, Cat]
Vector بعد clear(): []

طرق أخرى للمvector (vector)

الطريقةوصف المحتوى
set()تغيير عنصر المvector
size()عدم العودة حجم المvector
toArray()تحويل الم向量 إلى مصفوفة
toString()تحويل الم向量 إلى نص
contains()

البحث عن العنصر المحدد في الم向量 وعدم العودة قيمة بولية