Perbedaan Antara Daftar dan Set

Perbedaan Utama - Daftar vs Set
 

Sebagian besar bahasa pemrograman menggunakan array untuk menyimpan satu set data dengan tipe yang sama. Salah satu kelemahan utama array adalah, begitu ukuran array dideklarasikan, array tidak dapat dimodifikasi. Jika programmer ingin menyimpan nilai yang melebihi ukuran array, maka ia harus membuat array baru dan menyalin elemen yang ada ke array baru. Dalam situasi ini, koleksi dapat digunakan. Dimungkinkan untuk menambahkan elemen, menghapus elemen, dan banyak operasi lainnya dengan dukungan koleksi. Ada berbagai jenis koleksi yang tersedia dalam bahasa pemrograman seperti Java. Daftar dan Set adalah antarmuka hirarki koleksi. Antarmuka dasar untuk antarmuka lain adalah Collection. Itu perbedaan utama antara List dan Set adalah itu Daftar mendukung menyimpan elemen yang sama beberapa kali sementara Set tidak mendukung menyimpan elemen yang sama beberapa kali. Oleh karena itu, Perangkat tidak memungkinkan duplikasi.

ISI

1. Ikhtisar dan Perbedaan Utama
2. Apa itu Daftar
3. Apa yang Diatur
4. Kesamaan Antara Daftar dan Set
5. Perbandingan Berdampingan - Daftar vs Diatur dalam Bentuk Tabular
6. Ringkasan

Apa itu Daftar?

Daftar ini adalah antarmuka yang memperluas antarmuka Koleksi. Ada sejumlah metode dalam antarmuka Koleksi. Metode add membantu menambah elemen. 'Metode hapus' adalah untuk menghapus elemen. Ada 'metode addAll' untuk menambahkan beberapa elemen sementara 'metode removeAll' untuk menghapus elemen dari koleksi. Metode berisi membantu untuk menemukan apakah objek tertentu hadir dalam Daftar atau tidak. The 'berisi semua' adalah untuk menemukan apakah satu set objek hadir dalam koleksi. Metode iterator digunakan untuk mengulang item-item dari daftar. Saat Daftar memperluas Koleksi, semua metode Koleksi milik Daftar. Selain metode-metode itu, Daftar memiliki metode seperti get and set. Programmer bisa mendapatkan nilai pada indeks tertentu menggunakan metode get. Programmer dapat menetapkan nilai pada indeks tertentu menggunakan metode set. 'IndexOf' digunakan untuk menemukan indeks suatu elemen.

Dalam Daftar, operasi dapat dilakukan sesuai dengan posisi. Programmer dapat menyediakan elemen data yang akan ditambahkan ke indeks. Jadi itu akan ditambahkan ke indeks spesifik. Jika pemrogram tidak memberikan indeks, elemen akan ditambahkan ke akhir Daftar. Itu juga mempertahankan urutan yang dimasukkan. Jika elemen 1 ditambahkan dan kemudian elemen2 ditambahkan, maka elemen1 akan sebelum elemen2.

Gambar 01: Daftar dan Set

ArrayList, LinkedList, Vector adalah beberapa kelas yang mengimplementasikan Daftar. Di ArrayList, mengakses elemen lebih cepat tetapi memasukkan dan menghapus lebih rendah. ArrayList tidak aman untuk thread. Mengakses ArrayList yang sama dari banyak utas mungkin tidak memberikan hasil yang sama. Dalam LinkedList, elemen-elemen tersebut terhubung ke belakang dan ke depan. Memasukkan dan menghapus elemen menggunakan LinkedList lebih cepat daripada ArrayList. LinkedList mengimplementasikan Daftar dan Antrian Keduanya. Vektor mirip dengan ArrayList, tetapi aman-tapak karena semua metode disinkronkan.

Apa yang Ditetapkan?

Set adalah antarmuka yang memperluas antarmuka Koleksi. Sebagai Set antarmuka memperluas Koleksi, semua metode Koleksi juga milik Set. Set tidak mendukung nilai duplikasi. Oleh karena itu, programmer tidak dapat menyimpan elemen yang sama dua kali. Ia memelihara serangkaian elemen yang unik. Antarmuka SortedSet memperluas Set interface. SortedSet mempertahankan elemen dalam urutan yang diurutkan. Antarmuka NavigableSet memperluas SortedSet. NavigableSet menyediakan metode navigasi seperti lantai bawah, lantai, langit-langit dll.

HashSet, LinkedHashSet, dan TreeSet adalah beberapa kelas yang mengimplementasikan antarmuka Set. Itu HashSet mengimplementasikan Set interface. Itu tidak mempertahankan urutan yang dimasukkan. Jika nilainya dimasukkan sebagai, x, b itu mungkin menyimpan sebagai, x, a, b. Itu LinkedSet mempertahankan urutan yang dimasukkan. Jika elemen dimasukkan dalam urutan a, x, b, urutan penyimpanan adalah a, x, b. Itu TreeSet mengimplementasikan Set dan NavigableSet. Itu tidak mempertahankan urutan penyisipan tetapi menyimpan elemen dalam urutan yang diurutkan. Jika urutan yang dimasukkan adalah a, c, b, maka elemen akan disimpan sebagai a, b, c. Semua HashSet, LinkedHashSet dan TreeSet tidak akan memiliki elemen duplikat.

Apa Persamaan Antara Daftar dan Set?

  • Antarmuka Daftar dan Atur memperpanjang antarmuka Koleksi.
  • Daftar dan Atur operasi pendukung seperti menambah, menghapus elemen.

Apa Perbedaan Antara Daftar dan Set?

Daftar vs Set

Daftar Antarmuka adalah sub antarmuka Koleksi yang berisi metode untuk melakukan operasi seperti memasukkan, menghapus berdasarkan indeks. Set Antarmuka adalah sub antarmuka Koleksi yang berisi metode untuk melakukan operasi seperti memasukkan, menghapus elemen sambil mempertahankan elemen unik.
 Kelas
ArrayList, Vector, dan LinkedList adalah kelas yang mengimplementasikan antarmuka Daftar. HashSet, LinkedHashSet, dan TreeSet adalah kelas yang mengimplementasikan Set interface.
Duplikasi Elemen
Daftar mendukung duplikasi elemen. Set tidak mendukung duplikasi elemen. Elemen-elemennya unik.

Ringkasan - Daftar vs Set

Koleksi digunakan untuk menyimpan elemen secara dinamis. Bahasa pemrograman seperti Java menyediakan antarmuka Koleksi. List dan Set adalah dua antarmuka yang dimiliki antarmuka Collection. Kedua antarmuka memperpanjang Koleksi. Artikel ini membahas perbedaan antara Daftar dan Set. Perbedaan utama antara Daftar dan Set adalah bahwa Daftar mendukung penyimpanan elemen yang sama beberapa kali sementara Set tidak mendukung penyimpanan elemen yang sama beberapa kali. Atur selalu mempertahankan elemen unik.

Referensi:

1. Point, Tutorial. "Java Collections.", Tutorials Point, 8 Jan 2018. Tersedia di sini