1. Collection adalah antarmuka tingkat atas dari kelas koleksi, dan antarmuka warisan langsungnya mencakup daftar dan set.
Koleksi
| --List: Elemen dipesan dan elemen dapat diulang. Karena sistem pengumpulan memiliki indeks.
| --ArrayList: Struktur data yang mendasarinya menggunakan struktur array. Fitur: Kecepatan kueri sangat cepat. Tetapi penambahan dan penghapusannya agak lambat. Thread tidak sinkron.
| --Linkedlist: Struktur data dari daftar tertaut yang digunakan di lapisan yang mendasarinya. Fitur: Kecepatan penambahan dan penghapusan sangat cepat, dan kueri sedikit lambat. Thread tidak sinkron.
| --Vektor: Lapisan yang mendasarinya adalah struktur data array. Sinkronisasi Thread. Digantikan oleh arraylist. Karena efisiensi yang rendah.
| --Tet: Elemen tidak teratur dan elemen tidak dapat diulang.
Daftar: Metode unik. Metode apa pun yang dapat mengoperasikan penanda sudut adalah metode unik dari sistem ini.
meningkatkan:
tambahkan (indeks, elemen); addall (indeks, koleksi);
Hapus: hapus (indeks);
Ubah: Set (indeks, elemen);
memeriksa:
get (index): sublist (from, to); listiterator (); INT INDEXOF (OBJ): Dapatkan lokasi elemen yang ditentukan. Listiterator listiterator ();
Daftar koleksi iterator unik. ListIterator adalah subinterface dari iterator.
Selama iterasi, elemen dalam koleksi tidak dapat dimanipulasi dengan metode objek pengumpulan. Karena pengecualian Exception ConcurrentModification akan terjadi.
Oleh karena itu, ketika iterator, Anda hanya dapat menggunakan iterator untuk melewatkan elemen operasi, tetapi metode iterator terbatas, dan Anda hanya dapat menilai, mengambil, dan menghapus elemen.
Jika Anda ingin operasi lain seperti menambahkan, memodifikasi, dll., Anda perlu menggunakan sub-antarmuka, ListIterator. Antarmuka ini hanya dapat diperoleh melalui metode Listiterator dari koleksi daftar.
Contoh kode:
Impor java.util.*; class listDemo {public static void SOP (objek obj) {System.out.println (obj); } Metode public static void () {arraylist al = new arraylist (); // tambahkan elemen al.add ("java01"); al.add ("java02"); al.add ("java03"); SOP ("Koleksi asli adalah:"+al); // Tambahkan elemen di lokasi yang ditentukan. al.add (1, "java09"); // Hapus elemen di lokasi yang ditentukan. //al.remove(2); // Ubah elemen. //al.set(2 ,"java007 "); // Dapatkan elemen melalui penanda sudut. sop ("get (1):"+al.get (1)); SOP (AL); // Dapatkan semua elemen. untuk (int x = 0; x <al.size (); x ++) {System.out.println ("al ("+x+") ="+al.get (x)); } Iterator it = al.iterator (); while (it.hasnext ()) {sop ("next:"+it.next ()); } // Dapatkan lokasi objek melalui IndexOf. SOP ("index ="+al.indexof ("java02")); Daftar sub = al.sublist (1,3); SOP ("sub ="+sub); } public static void main (string [] args) {// Demo List iterator. Arraylist al = new arraylist (); // tambahkan elemen al.add ("java01"); al.add ("java02"); al.add ("java03"); SOP (AL); ListIterator li = al.listiterator (); // sop ("hasprevious ():"+li.hasprevious ()); while (li.hasnext ()) {objek obj = li.next (); if (obj.equals ("java02")) //li.add("java009 "); li.set ("java006"); } while (li.hasprevious ()) {sop ("pre ::"+li.previous ()); } // sop ("hasnext ():"+li.hasnext ()); // sop ("hasprevious ():"+li.hasprevious ()); SOP (AL); /* // Selama proses iterasi, bersiaplah untuk menambah atau menghapus elemen. Iterator it = al.iterator (); while (it.hasnext ()) {objek obj = it.next (); if (obj.equals ("java02")) //al.add("java008 "); it.remove (); // Hapus referensi java02 dari koleksi. sop ("obj ="+obj); } sop (al); */}}Di atas adalah kompilasi informasi tentang antarmuka koleksi Java. Saya berharap ini dapat membantu siswa yang belajar Jawa.