Mengeluarkan Elemen dari Array di Java

1. Gambaran keseluruhan

Dalam tutorial ringkas ini, kita akan belajar tentang berbagai cara di mana kita dapat menghapus elemen dari array di Java menggunakan perpustakaan Apache Commons Lang.

2. Maven

Mari tambahkan kebergantungan commons-lang3 ke fail pom.xml projek kami :

 org.apache.commons commons-lang3 3.9 

3. Mengeluarkan Elemen

Sebelum kita bermula, mari kita lihat apa yang berlaku apabila kita membuang elemen dari array tanpa menggunakan kelas ArrayUtils dari perpustakaan Apache Commons Lang.

Memandangkan susunan di bawah, mari kita hapus elemen pada indeks 2 :

Cara mudah untuk melakukan ini adalah dengan mengganti nilai yang tersimpan di indeks 2 dengan nilai yang tersimpan di indeks 3 sehingga kita mencapai akhir array:

Perhatikan bahawa dengan membuang elemen dengan cara di atas, ukuran array akan tetap sama dan nilai yang disimpan pada indeks terakhir akan kosong. Oleh kerana tatasusunan mempunyai ukuran memori tetap yang diperuntukkan semasa inisialisasi , penghapusan elemen tidak menyesuaikan ukuran array.

Sekarang mari lihat di perwakilan array ketika mengeluarkan unsur menggunakan keluarkan kaedah dari ArrayUtils kelas dari Apache Commons Lang:

Seperti yang kita lihat, ukuran susunan di sini disesuaikan menjadi 5 setelah elemen dikeluarkan. Yang mengeluarkan kaedah mencipta pelbagai jenama baru dan salinan semua nilai kecuali nilai yang dikeluarkan.

The ArrayUtils kelas menyediakan dua cara untuk mengeluarkan unsur dari array. Mari kita lihat seterusnya.

4. Menggunakan Indeks sebagai Input

Cara pertama kita membuang elemen adalah dengan indeksnya dengan ArrayUtils # remove :

public int[] removeAnElementWithAGivenIndex(int[] array, int index) { return ArrayUtils.remove(array, index); }

Variasi lain adalah kaedah removeAll , yang dapat kita gunakan untuk membuang banyak elemen dari array, mengingat indeksnya:

public int[] removeAllElementsWithGivenIndices(int[] array, int... indices) { return ArrayUtils.removeAll(array, indices); }

5. Menggunakan Elemen sebagai Input

Atau, katakan kita tidak tahu indeks perkara yang akan kita keluarkan. Dalam kes itu, kita dapat menyediakan elemen untuk membuang menggunakan ArrayUtils # removeElement :

public int[] removeFirstOccurrenceOfGivenElement(int[] array, int element) { return ArrayUtils.removeElement(array, element); }

Inilah satu lagi variasi berguna kaedah ini ArrayUtils # removeElements , sekiranya terdapat lebih daripada satu elemen yang ingin kita hapus:

public int[] removeAllGivenElements(int[] array, int... elements) { return ArrayUtils.removeElements(array, elements); }

Kadang-kadang, kita mahu membuang semua kejadian elemen yang diberikan. Kita boleh melakukannya dengan menggunakan ArrayUtils # removeAllOccurences :

public int[] removeAllOccurrencesOfAGivenElement(int[] array, int element) { return ArrayUtils.removeAllOccurences(array, element); }

6. Kesimpulannya

Dalam artikel ini, kami melihat berbagai cara menghapus elemen / elemen dari array menggunakan perpustakaan Apache Commons Lang.

Untuk mengetahui lebih lanjut mengenai kes tepi, sila periksa kod sumber untuk tutorial ini dan ujian unit berkaitan yang terdapat di GitHub.