1. ArrayList
kelas
Dina iki kita bakal njelajah ArrayList
kelas. Iki minangka kelas pisanan saka sawetara kelas sing dikenal minangka koleksi . Ing Jawa, koleksi minangka topik sing wiyar lan migunani sing kabeh nggoleki CodeGym dikhususake kanggo dheweke.
Kanggo ngerti kanthi lengkap carane koleksi disusun lan kabeh nuansa, sampeyan kudu sinau OOP, antarmuka, warisan, dhasar multithreading, lan liya-liyane.
Dadi dina iki kita bakal kenal karo koleksi sing paling gampang. Nanging ing tingkat sing cukup jero supaya sampeyan ngerti carane nggunakake lan cara kerjane. Saiki, ketemu ArrayList
koleksi .
Latar mburi
Aku bakal miwiti karo latar mburi sethitik. Programer pancen ora seneng karo siji aspek array: nyatane ukurane ora bisa diganti. Apa yen sampeyan kudu nyimpen telung unsur liyane ing array, nanging mung ana siji sel kosong?
Siji-sijine solusi kanggo watesan ruang array yaiku nggawe array sing gedhe banget supaya bisa nampung kabeh unsur sing kudu disimpen. Nanging iki biasane sampah memori. Yen larik biasane ngemot loro utawa telung unsur, nanging ana kemungkinan cilik yen kudu nyimpen 100, mula kudu nggawe larik kanthi kapasitas kanggo nyimpen 100.
Dadi apa sing digawe programer? Dheweke nulis ArrayList
kelas, sing nindakake pakaryan sing padha karo Array
kelas kasebut, nanging bisa diowahi ukurane.
Kelas ArrayList
Jeneng kelas kasebut ArrayList
dumadi saka rong tembung: Array + List. Array
iku array lan List
dhaftar.
Saben ArrayList
obyek ngemot macem-macem unsur biasa. Nalika sampeyan maca unsur saka ArrayList
, obyek njupuk saka array internal. Nalika sampeyan nulis unsur, iku nulis menyang Uploaded internal.
Kelas ArrayList ora duwe kabeh kekurangan sing ana ing array. Iku ngerti carane:
- Simpen unsur saka jinis tartamtu
- Ngowahi ukuran dhaptar kanthi dinamis
- Tambah unsur ing mburi dhaftar
- Lebokake unsur ing wiwitan utawa tengah dhaptar
- Mbusak unsur saka ngendi wae ing dhaptar
Kanggo rincian liyane, deleng ing ngisor iki:
2. Nggawe ArrayList
obyek
Kanggo nggawe ArrayList
obyek, sampeyan kudu nulis kode kaya iki:
ArrayList<TypeParameter> name = new ArrayList<TypeParameter>();
Ing endi ArrayList
jinis koleksi / kelas, TypeParameter
yaiku jinis unsur sing disimpen ing ArrayList
koleksi, lan name
jeneng ArrayList<TypeParameter>
variabel.
Variabel kasebut name
nduweni jinis umum. Iki kalebu rong jinis: jinis koleksi dituduhake dhisik, banjur kurung sudut digunakake kanggo nuduhake jinis unsur sing disimpen ing koleksi kasebut.
Tuladha:
Kode | Katrangan |
---|---|
|
Dhaptar integer |
|
Dhaptar senar |
|
Dhaptar nomer nyata |
Ora kaya array, koleksi ora bisa nyimpen jinis primitif, mung jinis referensi . Dadi yen sampeyan perlu koleksi int
s, nggunakake Integer
kelas pambungkus tinimbang.
3. Operasi karoArrayList
Kaping pisanan, dawa dhaptar sing mentas digawe nol, amarga ngemot 0 unsur. Yen sampeyan nambah siji unsur kanggo dhaftar, dawane mundhak 1. Yen sampeyan mbusak unsur ditambahake, dawa sudo bali menyang nul.
Tabel ing ngisor iki bisa mulang sampeyan luwih akeh babagan metode kelas ArrayList
:
Metode | Katrangan |
---|---|
|
Nambahake unsur liwati menyang dhaptar |
|
Nambahake unsur menyang lokasi tartamtu ing dhaptar. |
|
Ngasilake unsur sing indeks kasebutindex |
|
Nemtokake value unsur sing indeks kasebutindex |
|
Mbusak unsur sing indeks index . Ngasilake unsur dibusak. |
|
Mbusak unsur sing sampeyan pass menyang cara. Yen ana luwih saka siji unsur kasebut, sing pisanan bakal dibusak. |
|
Mbusak dhaptar, yaiku mbusak kabeh unsur saka dhaptar. |
|
Priksa manawa dhaptar kasebut ngemot value . |
|
Priksa manawa dhaptar kasebut kosong utawa ora. Ing tembung liyane, apa dawa dhaftar punika nul. |
|
Ngasilake ukuran dhaptar, yaiku jumlah unsur ing dhaptar. |
|
Ngasilake larik sing ngemot unsur dhaptar. Sampeyan kudu ngliwati array menyang metode kasebut. |
Cara iki ngidini sampeyan nindakake meh kabeh sing dikarepake karo dhaptar: ngganti unsur, nambah unsur, lan mbusak unsur. Sampeyan bisa mbusak dhaptar kanthi printah siji, utawa malah ngowahi dhaptar kasebut dadi array.
4. Comparison saka ArrayList
lanArray
Aku ora mikir kita bisa supaya mbandhingaké ArrayList
lan array.
Mung ana 4 tumindak sing bisa ditindakake nganggo array:
- Nggawe larik
- Entuk unsur kanthi indeks
- Setel unsur kanthi indeks
- Entuk dawa array
Mangkene operasi kasebut nalika ditrapake kanggo array lan ArrayList
:
Array | ArrayList |
---|---|
|
|
|
|
|
|
|
|
Ayo mbandhingake cara kerjane ArrayList
karo cara kerjane array. Contone, ayo ngleksanakake tugas iki: "maca 10 senar saka keyboard lan nampilake ing layar kanthi urutan mbalikke"
Nggunakake Array | Nggunakake ArrayList |
---|---|
|
|
Analogi kasebut cetha. Kabeh luwih cendhek lan luwih cetha kanggo susunan. Nanging ArrayList
ora angel: kanggo njaluk unsur, kita nggunakake get()
cara; kanggo ngganti unsur, set()
cara; kanggo njaluk dawa dhaftar, size()
cara.
Dadi, kenapa programer nggunakake ArrayList
kelas kasebut?
Intine, mesthi, kabeh cara liyane sing ora ana ing array biasa:
- Tambah unsur menyang dhaptar
- Tambah unsur ing tengah dhaptar
- Temokake unsur ing dhaptar
- Mbusak unsur saka dhaptar
GO TO FULL VERSION