People Innovation Excellence
 

Vector VS ArrayList

Dalam bahasa pemrograman C, kita mengenal struktur data. Sedangkan dalam bahasa pemrograman Java, kita mengenal array dinamis, yaitu vector dan arraylist. Dalam penggunaannya, terkadang vector dan arraylist dianggap sama. Dalam format penggunaannya juga sama, berikut adalah contoh penggunaannya:

  • Vector vec = new Vector<String>();
  • ArrayList arr = new ArrayList<Integer>();

Beberapa fungsi yang mereka punya juga beberapa sama, tetapi ada juga yang berbeda. Berikut adalah perbedaan vector dan arraylist:

  • Synchronization

ArrayList tidak tersinkronisasi, jadi memungkinkan untuk beberapa threads yang sedang beroperasi secara bersamaan. Sedangkan vector tidak tersinkronisasi, hanya bisa satu vector yang beroperasi dengan vector tersebut.

  • Resize

Meskipun sama-sama bersifat dinamis, cara arraylist dan vector memperbesar ukurannya berbeda. arrayList mengubah ukurannya sebesar setengah dari ukurannya. Sedangkan vector melipat menggandakan ukurannya. arrayList bisa digunakan untuk menghemat memori.

  • Performance

arrayList dianggap lebih baik performanya dibandingkan dengan vector. Sebenarnya ini ada kaitannya dengan sinkronisasi yang sudah dibahas di atas. Karena hanya dalam konteks vector, sebuah tread akan terkunci ketika sedang beroperasi, jadi thread lain harus menunggu thread tersebut terlebih dahulu.

  • Fail-fast

   Fail-fast adalah ketika sebuah collection (arrayList, vector, etc) secara struktural dimodifikasi dengan cara apapun, kecuali menggunakan add atau remove pada iterator method, maka iterator akan melempar ConcurrentModificationException. Berdasarkan Javadoc, enumerasi yang dikembalikan oleh vector tidak fail-fast, sedangkan pada arrayList fail-fast

Referensi :

Lakhani, N. (2016). What are the differences between ArrayList and Vector?. [online] Stack Overflow. Available at: https://stackoverflow.com/questions/2986296/what-are-the-differences-between-arraylist-and-vector [Accessed 18 Jul. 2018].


Published at : Updated
Leave Your Footprint

    Periksa Browser Anda

    Check Your Browser

    Situs ini tidak lagi mendukung penggunaan browser dengan teknologi tertinggal.

    Apabila Anda melihat pesan ini, berarti Anda masih menggunakan browser Internet Explorer seri 8 / 7 / 6 / ...

    Sebagai informasi, browser yang anda gunakan ini tidaklah aman dan tidak dapat menampilkan teknologi CSS terakhir yang dapat membuat sebuah situs tampil lebih baik. Bahkan Microsoft sebagai pembuatnya, telah merekomendasikan agar menggunakan browser yang lebih modern.

    Untuk tampilan yang lebih baik, gunakan salah satu browser berikut. Download dan Install, seluruhnya gratis untuk digunakan.

    We're Moving Forward.

    This Site Is No Longer Supporting Out-of Date Browser.

    If you are viewing this message, it means that you are currently using Internet Explorer 8 / 7 / 6 / below to access this site. FYI, it is unsafe and unable to render the latest CSS improvements. Even Microsoft, its creator, wants you to install more modern browser.

    Best viewed with one of these browser instead. It is totally free.

    1. Google Chrome
    2. Mozilla Firefox
    3. Opera
    4. Internet Explorer 9
    Close