Rumah >Java >javaTutorial >Definisi dan kemahiran penggunaan kaedah generik Java
Jawapan: Kaedah generik dalam Java membenarkan kod serasi dengan berbilang jenis. Definisi: Gunakan kurungan sudut 8742468051c85b06f0a0af9e3e506b5c untuk menentukan maklumat jenis untuk parameter dan nilai pulangan. Penggunaan: Boleh digunakan untuk memanipulasi koleksi pelbagai jenis dan membandingkan objek daripada jenis yang berbeza. Parameter jenis terhad: Tentukan bahawa jenis itu terhad kepada jenis tertentu melalui kata kunci lanjutan. Pertempuran praktikal: Kaedah generik sesuai untuk mencipta algoritma pengisihan umum, seperti pengisihan pantas. .
Tentukan kaedah generik
Untuk mentakrifkan kaedah generik, gunakan kurungan sudut a8093152e673feb7aba1828c43532094 selepas nama kaedah untuk menentukan parameter jenis:
public static <T> void swap(T[] array, int i, int j) { T temp = array[i]; array[i] = array[j]; array[j] = temp; }Dalam contoh ini,
mewakili jenis parameter kaedah dan pulangan nilai Maklumat tidak diketahui.
Penggunaan kaedah generikAnda boleh menggunakan kaedah generik untuk mengendalikan koleksi pelbagai jenis: Integer[] numbers = {1, 2, 3};
swap(numbers, 0, 2); // 交换数字 1 和 3
Begitu juga, anda juga boleh menggunakan kaedah generik untuk membandingkan objek dari jenis yang berbeza:
public static <T extends Comparable<T>> int compare(T a, T b) { return a.compareTo(b); } int result = compare("Hello", "World"); // 比较字符串menggunakan parameter jenis Bounded
8742468051c85b06f0a0af9e3e506b5c
Anda boleh menggunakan kata kunci lanjutan untuk menentukan bahawa parameter jenis generik terikat pada jenis tertentu:
public static <T extends Number> double sum(T[] array) { double total = 0.0; for (T element : array) { total += element.doubleValue(); } return total; } double sum = sum(new Integer[]{1, 2, 3}); // 求整数和
Contoh praktikal: Algoritma pengisihan
Kaedah generik bagus untuk mencipta algoritma pengisihan tujuan umum, seperti isihan pantas:
rreeeeAtas ialah kandungan terperinci Definisi dan kemahiran penggunaan kaedah generik Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!