Rumah >Java >javaTutorial >Apakah Cara Paling Cekap untuk Memulakan ArrayList di Java?
Untuk memulakan ArrayList dengan elemen tertentu, pembangun sering menghadapi dilema memilih kaedah yang paling cekap dan ringkas . Satu pendekatan yang digunakan secara meluas melibatkan penggunaan kata kunci baharu, mencipta ArrayList kosong dan seterusnya menambah elemen menggunakan kaedah tambah.
Walau bagaimanapun, penyelesaian yang lebih ringkas ialah memanfaatkan kaedah asList pada kelas Arrays. Dengan menghantar tatasusunan nilai ke asList, seseorang boleh membuat senarai tidak boleh diubah. Membungkus senarai ini dalam pembina ArrayList menukarnya menjadi senarai boleh ubah yang menyokong penambahan dan pengalihan elemen.
Sebagai contoh, pertimbangkan kod berikut:
ArrayList<String> places = new ArrayList<String>( Arrays.asList("Buenos Aires", "Córdoba", "La Plata"));
Pendekatan ini menggabungkan kelebihan kedua-duanya kata kunci baharu dan kaedah asList, membenarkan permulaan ArrayList dengan satu baris kod.
Tetapi adakah terdapat pilihan yang lebih mudah? Jika keperluan itu bukan ArrayList secara eksplisit, seseorang boleh menggunakan antara muka Senarai sebaliknya. Kaedah Arrays.asList boleh mencipta senarai tidak berubah tanpa perlu membungkusnya dalam ArrayList.
List<String> places = Arrays.asList("Buenos Aires", "Córdoba", "La Plata");
Untuk senario di mana hanya satu elemen sahaja, kaedah Collections.singletonList berfungsi sebagai alternatif yang lebih kemas.
List<String> places = Collections.singletonList("Buenos Aires");
Menggunakan kaedah singletList memastikan ketidakbolehubah, bermakna sebarang percubaan untuk mengubah suai senarai yang terhasil akan menghasilkan pengecualian. Untuk senarai boleh ubah, pertimbangkan untuk membungkus senarai tidak berubah dalam ArrayList.
ArrayList<String> places = new ArrayList<>(Arrays.asList("Buenos Aires", "Córdoba", "La Plata"));
Ingat untuk mengimport pakej java.util.Arrays untuk pendekatan ini.
Atas ialah kandungan terperinci Apakah Cara Paling Cekap untuk Memulakan ArrayList di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!