Dalam tutorial ini, kita akan belajar tentang kelas Vector dan cara menggunakannya. Kita juga akan mempelajari perbedaannya dari kelas ArrayList, dan mengapa kita harus menggunakan daftar array.
The Vector
kelas merupakan implementasi dari List
antarmuka yang memungkinkan kita untuk membuat resizable-array mirip dengan kelas ArrayList.
Vektor Java vs. ArrayList
Di Java, keduanya ArrayList
dan Vector
mengimplementasikan List
antarmuka dan menyediakan fungsi yang sama. Namun, terdapat beberapa perbedaan di antara keduanya.
The Vector
kelas mensinkronisasikan setiap operasi individu. Ini berarti setiap kali kita ingin melakukan beberapa operasi pada vektor, Vector
kelas secara otomatis menerapkan kunci ke operasi itu.
Itu karena ketika satu utas mengakses vektor, dan pada saat yang sama utas lain mencoba mengaksesnya, pengecualian yang disebut ConcurrentModificationException
dibuat. Karenanya, penggunaan kunci secara terus menerus untuk setiap operasi membuat vektor menjadi kurang efisien.
Namun, dalam daftar array, metode tidak disinkronkan. Sebaliknya, ia menggunakan Collections.synchronizedList()
metode yang menyinkronkan daftar secara keseluruhan.
Catatan: Direkomendasikan untuk digunakan ArrayList
sebagai pengganti Vector
karena vektor tidak aman untuk thread dan kurang efisien.
Membuat Vektor
Berikut adalah cara membuat vektor di Java.
Vector vector = new Vector();
Di sini, Type menunjukkan jenis daftar tertaut. Sebagai contoh,
// create Integer type linked list Vector vector= new Vector(); // create String type linked list Vector vector= new Vector();
Metode Vektor
The Vector
kelas juga menyediakan implementasi resizable-array dari List
antarmuka (mirip dengan ArrayList
kelas). Beberapa Vector
caranya adalah:
Tambahkan Elemen ke Vektor
add(element)
- menambahkan elemen ke vektoradd(index, element)
- menambahkan elemen ke posisi yang ditentukanaddAll(vector)
- menambahkan semua elemen vektor ke vektor lain
Sebagai contoh,
import java.util.Vector; class Main ( public static void main(String() args) ( Vector mammals= new Vector(); // Using the add() method mammals.add("Dog"); mammals.add("Horse"); // Using index number mammals.add(2, "Cat"); System.out.println("Vector: " + mammals); // Using addAll() Vector animals = new Vector(); animals.add("Crocodile"); animals.addAll(mammals); System.out.println("New Vector: " + animals); ) )
Keluaran
Vektor: (Anjing, Kuda, Kucing) Vektor Baru: (Buaya, Anjing, Kuda, Kucing)
Akses Elemen Vektor
get(index)
- mengembalikan elemen yang ditentukan oleh indeksiterator()
- mengembalikan objek iterator untuk mengakses elemen vektor secara berurutan
Sebagai contoh,
import java.util.Iterator; import java.util.Vector; class Main ( public static void main(String() args) ( Vector animals= new Vector(); animals.add("Dog"); animals.add("Horse"); animals.add("Cat"); // Using get() String element = animals.get(2); System.out.println("Element at index 2: " + element); // Using iterator() Iterator iterate = animals.iterator(); System.out.print("Vector: "); while(iterate.hasNext()) ( System.out.print(iterate.next()); System.out.print(", "); ) ) )
Keluaran
Elemen pada indeks 2: Vektor Kucing: Anjing, Kuda, Kucing,
Hapus Elemen Vektor
remove(index)
- menghapus elemen dari posisi tertenturemoveAll()
- menghapus semua elemenclear()
- menghapus semua elemen. Ini lebih efisien daripadaremoveAll()
Sebagai contoh,
import java.util.Vector; class Main ( public static void main(String() args) ( Vector animals= new Vector(); animals.add("Dog"); animals.add("Horse"); animals.add("Cat"); System.out.println("Initial Vector: " + animals); // Using remove() String element = animals.remove(1); System.out.println("Removed Element: " + element); System.out.println("New Vector: " + animals); // Using clear() animals.clear(); System.out.println("Vector after clear(): " + animals); ) )
Keluaran
Vektor Awal: (Anjing, Kuda, Kucing) Elemen yang Dihapus: Kuda Vektor Baru: (Anjing, Kucing) Vektor setelah hapus (): ()
Metode Vektor Lainnya
Metode | Deskripsi |
---|---|
set() | mengubah elemen vektor |
size() | mengembalikan ukuran vektor |
toArray() | mengubah vektor menjadi larik |
toString() | mengubah vektor menjadi String |
contains() | mencari vektor untuk elemen tertentu dan mengembalikan hasil boolean |