ArrayList and Vector
List Operation
•
Operasi paling khas dari daftar:
•
mengambil elemen dari daftar
•
memasukkan elemen baru ke dalam daftar
•
menghapus sebuah elemen dari daftar
•
mencari jumlah elemen dalam daftar
•
untuk menemukan apa elemen berisi dalam daftar
•
tahu apakah daftar itu kosong atau tidak
•
Methods:
§ get(index)
§ add
(index, element)
§ remove(element)
§ size()
§ containts(element)
§ isEmpty()
§ clear()
§ indexOf(element)
§ set(index,
element)
List Implementation
•
Ada 2 cara untuk menerapkan Daftar:
1. Array
–
Dibuat dinamis
–
Jika melebihi kapasitas array yang kemudian
membuat array yang lebih besar dan menyalin semua elemen mengandung ke array
baru
2. Linked
Structure
–
Terdiri dari node
–
Setiap node dibuat secara dinamis untuk setiap
elemen
–
Semua node yang terhubung ke yang lain
ArrayList
•
Struktur data ukuran Array adalah tetap, setelah
dibuat, ukuran tidak dapat diganti lagi.
•
Warisan AbstractList dan Implementasi dari kelas
List, Random Access, Cloneable, dan Serializable.
•
ArrayList dibuat untuk mengatasi masalah yang
dihadapi oleh Array dalam menentukan ukurannya karena merupakan ArrayList
dinamis
•
Deklarasi:
ArrayList
al = new ArrayList();
ArrayList Method
•
Fungsi-fungsi berikut yang sering digunakan
dalam kelas ArrayList
–
add(element) à
menambahkan elemen ke dalam daftar
–
clear() à
menghapus semua elemen dalam daftar
–
clone() à mengembalikan objek disalin
dalam daftar
–
containts(element) à elemen mencari berisi
dalam daftar
–
get(index) à
mengambil elemen tertentu pada indeks dalam daftar
–
isEmpty() à untuk memeriksa apakah daftar kosong atau
tidak
–
remove(index) à untuk menghapus elemen
yang ditunjuk dalam daftar
–
size() à jumlah elemen dalam daftar
–
set(index, element) à mengisi elemen dalam
daftar sesuai dengan posisi yang ditunjuk
•
Hampir semua fungsi dalam ArrayList adalah sama
dengan yang di Daftar kelas, karena ArrayList sebagian besar dilaksanakan dari
Daftar kelas (interface).
Example of ArrayList Code
•
Output :
Vector
•
Warisan dan sama menerapkan dengan ArrayList
•
Juga dinamis dalam ukuran (growable).
•
Setiap vektor mencoba untuk mengoptimalkan
manajemen penyimpanan dengan mempertahankan kapasitasnya
•
Termasuk salah satu bagian dari koleksi kerangka
java
•
Deklarasi:
Vector v = new Vector();
Vector Method
•
Fungsi-fungsi berikut yang sering digunakan di
kelas vector:
–
addElement(element) à
menambahkan elemen ke urutan terakhir dari vektor
–
capacity() à
mengembalikan vektor kapasitas
–
clone() à mengembalikan permukaan lahan
coppied dalam vektor yang
–
containts(element) à elemen mencari dalam
vektor
–
copyInto(element[]) à copy element ke
specific array
–
elementAt(index) à
mengambil elemen dari indeks yang ditunjuk
–
insertElementAt(element , index) à
menambahkan elemen ke indeks yang ditunjuk
–
isEmpty() à memeriksa apakah vektor
kosong atau tidak
–
remove(index) menghapus elemen
yang ditunjuk dalam vektor
–
size() à jumlah elemen dalam vektor
–
set(index, element) à mengisi elemen vektor
sesuai dengan posisi yang ditunjuk
•
Hampir semua fungsi dalam Vector adalah sama
dengan fungsi dalam Daftar kelas, karena sebagian besar menerapkan Vector dari
Daftar kelas (interface). Dan juga identik sama dengan ArrayList.
Example for Vector Code
•
Output :
ArrayList VS Vector
•
Setiap
Vector metode yang diberikan kata kunci "disinkronkan", sehingga
ketika dieksekusi dalam Thread, itu tidak akan terjadi Thread kemacetan.
•
Dalam
ArrayList setiap metode tidak diberi keyword "disinkronkan", sehingga
ketika dieksekusi dalam Thread, hal ini dapat mengakibatkan tidak aman Thread,
dengan kata lain tabrakan Thread dapat terjadi, ketika Thread mencoba untuk
memanggil Metode ArrayList.
•
Waktu
yang digunakan oleh ArrayList lebih pendek dibandingkan dengan Vector.
•
Jika
kita ingin membuat dinamis array yang dijalankan menggunakan Thread, gunakan
Vector. Sedangkan jika memang proses yang kita tidak perlu menggunakan benang,
kemudian gunakan ArrayList untuk proses lebih cepat dari array dinamis.
Tidak ada komentar:
Posting Komentar