CodeGym /Blog Jawa /Acak /Konversi Array menyang ArrayList ing Jawa
John Squirrels
tingkat
San Francisco

Konversi Array menyang ArrayList ing Jawa

Diterbitake ing grup
Hi! Ing wulangan dina iki, kita bakal ngomong babagan Cara Miwiti Array ing Jawa lan Cara Ngonversi Array menyang Arraylist. Arrays minangka ekstensi saka kelas Container ing Jawa lan bisa migunani minangka cara kanggo nyimpen sakumpulan jinis data primitif nalika jumlah data kasebut dikenal kanthi khusus. Nanging Arrays statis nalika digawe, tegese yen sampeyan nggawe, sampeyan ora bisa ngganti jumlah item sing dicekel. Sampeyan kudu ngelingi carane miwiti array ing java; katon kaya iki:

datatype[] isArray;
Ngendi tipe data minangka jinis data primitif kaya int, float, dawa, utawa malah String. Sampeyan uga bisa nyelehake kurung sawise deklarasi kaya mangkene:

datatype isArray[];
Dadi kepiye carane njupuk array statis iki kanthi sawetara unsur lan ngowahi dadi ArrayList? Inggih, pisanan, ayo goleki apa ArrayList.

ArrayList

ArrayList bisa uga duwe jeneng sing padha karo Array nanging ditangani kanthi beda. Iku amarga ArrayList ora ngluwihi kelas Container, iku ngluwihi kelas List. Lan tegese kabeh bakal ditangani kanthi beda. Siji bab, amarga iku Dhaptar, sampeyan bisa ngapusi iku beda. Sampeyan bisa nambah utawa nyuda ukuran ArrayList nggunakake add(element) , kang nempatno unsur ing mburi Dhaftar lan nambah ukuran siji yen perlu. Utawa sampeyan bisa nggunakake trimToSize ()kang mbusak sembarang indeks kosong ing mburi lan trims ArrayList kanggo ukuran saiki. Supaya sampeyan bisa ndeleng manawa ana sawetara kaluwihan nggunakake ArrayList tinimbang mung array. Sabanjure, kita bakal nuduhake sampeyan rong cara kanggo ngowahi saka Array menyang ArrayList lan carane bali yen perlu.

Pindhah saka Array menyang ArrayList lan ArrayList menyang Array ing Jawa

Dadi, ayo ngomong yen sampeyan wis nulis program kanggo nyimpen inventaris babagan jumlah kacang lan baut perusahaan sampeyan kanggo ndandani wit kucing. Wis pirang-pirang taun, sampeyan mung mbutuhake 30 macem-macem jinis, mula gampang nggunakake array kanggo nglacak. Nanging saiki sampeyan duwe klien anyar sing mbutuhake sampeyan nyedhiyakake 5 jinis tambahan. Kepiye carane sampeyan bisa ngganti program lan nyimpen kabeh data, lan nyegah sampeyan ora kudu nindakake iki maneh nalika njupuk klien liyane? Bener! ArrayList! Dadi, kepiye sampeyan ngowahi Array Jawa dadi ArrayList? Ana telung cara. Nggunakake cara .asList () array Jawa duwe alat gedhe sing bisa ndeleng nalika katon ing API disebut .asList () . Dadi sampeyan mung bisa nulis ing iki:

boltInventory.asList(bolts);
Masalah karo metode iki yaiku ora nggawe ArrayList sing bener. Apa sing ditindakake yaiku nggawe Dhaptar sing ukurane tetep lan ora bisa diganti. Dadi sampeyan isih ora bisa ngganti ukuran kanthi dinamis. Nyoba nambah utawa mbusak unsur bakal nimbulaké pangecualian. Dadi, sanajan iki duwe kegunaan, iki dudu konversi sing sejatine. Nanging kita bisa nggunakake iki. Nggunakake .asList () minangka Argumentasi Iki minangka cara liya kanggo ngowahi array menyang dhaptar ing Jawa. Amarga cara .asList () nggawe Dhaftar, kita bisa nggunakake kanggo pass referensi kanggo ArrayList nyata. Mangkene carane miwiti ArrayList:

ArrayList<Integer> boltsInventory = new ArrayList<Integer>();
Iki bakal nggawe ArrayList sing duwe sepuluh sel kosong. Nanging, () ing pungkasan bisa digunakake kanggo ngirim argumen kanggo ngisi ArrayList. Dadi nggabungake karo metode .asList , sampeyan duwe:

ArrayList<Integer> boltsInventory = new ArrayList<Integer>(Arrays.asList(bolts));
Iki liwat List digawe dening .asList () cara menyang ArrayList, supaya saiki sampeyan bisa mbosenke ngapusi iku sing perlu. Nggunakake metode Collections.addAll () Cara liya kanggo ngowahi Array menyang ArrayList ing Jawa yaiku nggunakake metode iki. Iku ngliwati isi Array menyang ArrayList. Sintaks umum kanggo metode iki yaiku:

Collections.addAll(c, T);
Endi c minangka tujuan lan T yaiku sing dilewati. Dadi contone, sintaks bakal katon kaya iki:

ArrayList<Integer> boltsInventory = new ArrayList<Integer>():
Collections.addAll(boltsInventory, bolts);
Iki bakal ngliwati kabeh isi baut Array menyang ArrayList anyar. Ngonversi ArrayList menyang Array Bisa uga ana wektu nalika sampeyan kudu ngowahi ArrayList dadi Array ing Jawa. Yen sampeyan nindakake, ArrayList duwe metode .toArray(a) , ing ngendi a minangka tujuan. Dadi kanggo conto kita, sintaks bakal dadi:

Integer boltsInventoryArray[] = new Integer{boltsInventory.size()];
// this ensures the newly created array is of the same size as the ArrayList
boltsInventoryArray = boltsInventory.toArray(boltsInventoryArray);
Nalika sampeyan ngganti dhaptar menyang array ing Jawa kaya iki, sampeyan nggawe salinan jero. Tegese, kabeh referensi kanggo Array beda karo referensi kanggo ArrayList. Supaya sampeyan bisa ngapusi data ing Array tanpa ngganti data sing disimpen ing ArrayList. Iku migunani kanggo ngowahi dhaptar java menyang array nalika sampeyan kudu nyoba data.

Kesimpulan

Arrays migunani banget kanggo akses cepet lan manipulasi cepet saka set data sing luwih cilik, nanging ora bisa ngganti ukurane tegese cepet ilang efisiensi kanggo panggunaan jangka panjang. ArrayList menehi sampeyan keluwesan lan kemampuan kanggo nglebokake lan mbusak simpul yen perlu. Sinau carane ngowahi Java Array menyang Dhaptar bakal nambah efisiensi sakabèhé program sampeyan lan uga nambah runtime.
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION