Kelas Koleksi di Java menyediakan satu set algoritma yang biasa digunakan untuk beroperasi pada koleksi. Dengan menggunakan fungsi ini, pembangun Java boleh menyusun, mencari, menggantikan, menyalin dan operasi lain pada koleksi dengan mudah. Artikel ini akan memperkenalkan beberapa fungsi Collections yang biasa digunakan untuk membantu pembaca memahami cara menggunakan fungsi Collections untuk melaksanakan operasi pengumpulan dalam Java.
Fungsi isihan dalam kelas Koleksi boleh mengisih koleksi dengan menentukan Pembanding. Pembanding ialah antara muka yang biasanya digunakan untuk menentukan susunan elemen dalam koleksi. Berikut ialah contoh pengisihan menggunakan fungsi Collections.sort:
List<Integer> numbers = new ArrayList<>(); numbers.add(1); numbers.add(3); numbers.add(2); numbers.add(4); Collections.sort(numbers); for (Integer num : numbers) { System.out.print(num + " "); }
Kod di atas akan mengeluarkan: 1 2 3 4. Jika kita ingin menyusun mengikut tertib menurun, kita boleh lulus dalam Comparator seperti ini:
Collections.sort(numbers, new Comparator<Integer>() { public int compare(Integer o1, Integer o2) { return o2 - o1; } });
Jadi kita boleh mendapatkan hasil dalam tertib menurun: 4 3 2 1.
Kelas Koleksi menyediakan beberapa fungsi carian yang biasa digunakan. Berikut ialah beberapa fungsi carian yang biasa digunakan dan penggunaannya:
Berikut ialah contoh carian menggunakan fungsi Carian binari:
List<String> names = new ArrayList<>(); names.add("Alice"); names.add("Bob"); names.add("Carol"); names.add("David"); int index = Collections.binarySearch(names, "Carol"); System.out.println("Index of Carol: " + index);
Ini akan mengeluarkan: "Indeks Carol: 2".
Terdapat fungsi ganti dalam kelas Koleksi, yang boleh digunakan untuk menggantikan elemen dalam koleksi. Berikut ialah contoh menggantikan menggunakan fungsi ganti:
List<String> names = new ArrayList<>(); names.add("Alice"); names.add("Bob"); names.add("Carol"); names.add("David"); Collections.replaceAll(names, "Bob", "Beth"); for (String name : names) { System.out.print(name + " "); }
Ini akan mengeluarkan: "Alice Beth Carol David".
Fungsi salin dalam kelas Koleksi boleh menyalin elemen dalam satu koleksi ke koleksi lain. Ambil perhatian bahawa kedua-dua koleksi mestilah sama saiznya. Berikut ialah contoh penyalinan menggunakan fungsi salin:
List<String> names1 = new ArrayList<>(); names1.add("Alice"); names1.add("Bob"); names1.add("Carol"); names1.add("David"); List<String> names2 = new ArrayList<>(names1.size()); Collections.copy(names2, names1); for (String name : names2) { System.out.print(name + " "); }
Ini akan menghasilkan: "Alice Bob Carol David".
Jika anda perlu mencipta koleksi tidak berubah, anda boleh menggunakan fungsi unmodifiableList, unmodifiableSet dan unmodifiableMap dalam kelas Collections untuk menciptanya. Fungsi ini mengembalikan koleksi berbalut dan tidak membenarkan pengubahsuaian elemen. Berikut ialah contoh menggunakan fungsi unmodifiableList untuk mencipta koleksi yang tidak boleh diubah:
List<String> names = new ArrayList<>(); names.add("Alice"); names.add("Bob"); names.add("Carol"); names.add("David"); List<String> immutableNames = Collections.unmodifiableList(names); System.out.print("Immutable names: "); for (String name : immutableNames) { System.out.print(name + " "); } try { immutableNames.add("Eve"); } catch (UnsupportedOperationException e) { System.out.println(" Failed to add Eve to immutableNames"); }
Ini akan mengeluarkan: "Nama tidak boleh diubah: Alice Bob Carol David" dan akan membuang UnsupportedOperationException apabila cuba menambah Hawa.
Dengan menggunakan fungsi yang disediakan dalam kelas Koleksi ini, pembangun Java boleh melakukan operasi biasa pada koleksi dengan mudah. Jika anda perlu melakukan operasi pengumpulan lain, anda boleh menyemak kelas Koleksi dalam dokumentasi API Java.
Atas ialah kandungan terperinci Cara menggunakan fungsi Koleksi untuk operasi pengumpulan dalam Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!