Perbezaan Antara Senarai Dan Set

Isi kandungan:

Perbezaan Antara Senarai Dan Set
Perbezaan Antara Senarai Dan Set

Video: Perbezaan Antara Senarai Dan Set

Video: Perbezaan Antara Senarai Dan Set
Video: PERBEZAAN LC V1 V2 V3 V4 V5 V6 | YAMAHA LC135 2020 2024, April
Anonim

Perbezaan Utama - Daftar vs Set

Sebilangan besar bahasa pengaturcaraan menggunakan tatasusunan untuk menyimpan sekumpulan data dengan jenis yang sama. Satu kelemahan utama array adalah bahawa, setelah ukuran array dinyatakan, ia tidak dapat diubah. Sekiranya pengaturcara ingin menyimpan nilai yang melebihi ukuran array, maka dia harus membuat susunan baru dan menyalin elemen yang ada ke array baru. Dalam situasi seperti ini, koleksi boleh digunakan. Adalah mungkin untuk menambahkan elemen, menghapus elemen dan banyak operasi lain dengan sokongan koleksi. Terdapat pelbagai jenis koleksi yang tersedia dalam bahasa pengaturcaraan seperti Java. List and Set adalah antara muka hierarki koleksi. Antara muka asas untuk antara muka lain ialah Koleksi. Perbezaan utama antara Daftar dan Set adalah bahawa Senarai menyokong menyimpan elemen yang sama berkali-kali sementara Set tidak menyokong menyimpan elemen yang sama berkali-kali. Oleh itu,Set tidak membenarkan pendua.

KANDUNGAN

1. Gambaran Keseluruhan dan Perbezaan Utama

2. Apa itu Senarai

3. Apa itu Set

4. Persamaan Antara Senarai dan Set

5. Perbandingan Berdampingan - Senarai vs Set dalam Borang Jadual

6. Ringkasan

Apa itu Senarai?

Senarai adalah antara muka yang memperluas antara muka Koleksi. Terdapat sebilangan kaedah di antara muka Koleksi. Kaedah tambah membantu menambahkan elemen. Kaedah 'remove' adalah untuk membuang elemen. Terdapat 'kaedah addAll' untuk menambahkan beberapa elemen sementara 'kaedah removeAll' untuk mengeluarkan elemen dari koleksi. Kaedah berisi membantu untuk mengetahui sama ada objek tertentu terdapat dalam Senarai atau tidak. The 'berisiAll' adalah untuk mengetahui sama ada sekumpulan objek terdapat dalam koleksi. Kaedah iterator digunakan untuk mencari item dalam senarai. Oleh kerana Senarai memperluas Koleksi, semua kaedah Pengumpulan termasuk dalam Senarai. Selain kaedah tersebut, List mempunyai kaedah seperti get and set. Pengaturcara dapat memperoleh nilai pada indeks tertentu menggunakan kaedah get. Pengaturcara dapat menetapkan nilai pada indeks tertentu menggunakan kaedah set.'IndexOf' digunakan untuk mencari indeks elemen.

Dalam Senarai, operasi dapat dilakukan mengikut kedudukan. Pengaturcara dapat menyediakan elemen data yang akan ditambahkan ke indeks. Jadi ia akan ditambahkan ke indeks tertentu. Sekiranya pengaturcara tidak memberikan indeks, elemen akan ditambahkan ke akhir Senarai. Ia juga mengekalkan susunan yang dimasukkan. Sekiranya elemen 1 ditambahkan dan kemudian elemen2 ditambahkan, maka elemen1 akan berada sebelum elemen2.

Perbezaan Antara Senarai dan Set
Perbezaan Antara Senarai dan Set

Gambar 01: Senaraikan dan Tetapkan

ArrayList, LinkedList, Vector adalah beberapa kelas yang melaksanakan List. Dalam ArrayList, mengakses elemen cepat tetapi memasukkan dan menghapus lebih rendah. ArrayList tidak selamat di thread. Mengakses ArrayList yang sama dari pelbagai utas mungkin tidak memberikan hasil yang sama. Dalam LinkedList, elemen dihubungkan ke belakang dan ke hadapan. Memasukkan dan menghapus elemen menggunakan LinkedList lebih pantas daripada ArrayList. The LinkedList melaksanakan Senarai dan Antrian Kedua-duanya. Vektor serupa dengan ArrayList, tetapi selamat digunakan kerana semua kaedah diselaraskan.

Apa itu Set?

Set adalah antara muka yang memperluas antara muka Koleksi. Sebagai antara muka Set memperluas Koleksi, semua kaedah Koleksi juga termasuk dalam Set. Set tidak menyokong nilai pendua. Oleh itu, pengaturcara tidak dapat menyimpan elemen yang sama dua kali. Ia mengekalkan sekumpulan elemen yang unik. Antara muka SortedSet meluaskan antara muka Set. SortedSet mengekalkan elemen mengikut urutan. Antara muka NavigableSet meluaskan SortedSet. NavigableSet menyediakan kaedah navigasi seperti bawah, lantai, siling dll.

HashSet, LinkedHashSet, dan TreeSet adalah beberapa kelas yang melaksanakan Set antara muka. HashSet melaksanakan antara muka Set. Ia tidak mengekalkan susunan yang dimasukkan. Sekiranya nilai dimasukkan sebagai a, x, b mungkin disimpan sebagai, x, a, b. LinkedSet mengekalkan susunan yang dimasukkan. Sekiranya elemen dimasukkan dalam urutan a, x, b, susunan penyimpanan akan menjadi a, x, b. TreeSet mengimplementasikan Set dan NavigableSet. Ia tidak mengekalkan susunan penyisipan tetapi menyimpan unsur-unsur dalam susunan yang disusun. Sekiranya susunan yang disisipkan adalah a, c, b, maka elemen akan disimpan sebagai a, b, c. Semua HashSet, LinkedHashSet dan TreeSet tidak akan mempunyai unsur pendua.

Apakah persamaan antara senarai dan set?

  • Kedua-dua antara muka Daftar dan Set memperluas antara muka Koleksi.
  • Kedua-dua operasi Sokongan dan Set seperti menambah, membuang elemen.

Apakah Perbezaan Antara Daftar dan Set?

Senarai vs Set

Senarai Antaramuka adalah antara muka Koleksi yang mengandungi kaedah untuk menjalankan operasi seperti memasukkan, menghapus berdasarkan indeks. Set Antaramuka adalah sub antara muka Koleksi yang mengandungi kaedah untuk melakukan operasi seperti memasukkan, menghapus elemen sambil mengekalkan elemen unik.
Kelas
ArrayList, Vector, dan LinkedList adalah kelas yang melaksanakan antara muka List. HashSet, LinkedHashSet, dan TreeSet adalah kelas yang melaksanakan Set antara muka.
Penduaan Elemen
Senarai menyokong penduaan unsur. Set tidak menyokong penduaan unsur. Elemen unik.

Ringkasan - Senarai vs Set

Koleksi digunakan untuk menyimpan elemen secara dinamik. Bahasa pengaturcaraan seperti Java menyediakan antara muka Koleksi. Daftar dan Set adalah dua antara muka yang tergolong dalam antara muka Koleksi. Kedua-dua antara muka meluas Koleksi. Artikel ini membincangkan perbezaan antara Daftar dan Set. Perbezaan utama antara Daftar dan Set adalah bahawa Senarai menyokong menyimpan elemen yang sama berkali-kali sementara Set tidak menyokong menyimpan elemen yang sama beberapa kali. Set sentiasa mengekalkan elemen unik.

Disyorkan: