Na Javo ArrayList je niz za splošno spreminjanje velikosti. Ponuja večino objektov, ki se običajno pričakujejo od nizov v drugih jezikih. Ti vključujejo: dostop do elementov z uporabo indeksa, dodajanje, odstranjevanje in posodabljanje elementov, dinamično spreminjanje velikosti, ponavljanje elementov itd. Večina teh operacij je bila posebej prilagojena za splošno uporabo.
kako ugotoviti, kateri videoposnetek youtube je bil izbrisan
Obstaja še nekaj drugih vrst 'nizov' (razredi, ki izvajajo Seznam vmesnik, biti tehnični), ki so namenjeni posebnim namenom. Tej vključujejo:
- LinkedList podpira hitro vstavljanje in odstranjevanje pri vmesnih indeksih.
- Vektor je podoben an ArrayList vendar je sinhroniziran in je primeren namesto ArrayList za večnitne aplikacije.
- Sklad podpira operacije za posnemanje seznama zadnjega v prvem odhodnega. Razširja Vektor in je zato sinhroniziran.
Ti posebni razredi so izven področja uporabe tega članka. Vendar se boste naučili, kako nastaviti in uporabljati splošni seznam Java ArrayList.
Ustvarjanje ArrayList
Ustvarjanje ArrayList je preprosto. Prazno ArrayList lahko ustvarite s konstruktorjem brez argumentov. Tukaj ustvarimo prazen seznam za shranjevanje nizov.
ArrayList alist = new ArrayList();
Če slučajno veste, koliko elementov bo vseboval vaš seznam nizov, lahko določite začetno zmogljivost. Ta začetna zmogljivost je le namig za dodelitev pomnilnika - seznam elementov ni omejen na shranjevanje določenega števila elementov. Če poznate in določite začetno zmogljivost, vas morda rahlo izboljšati zmogljivost.
ArrayList alist = new ArrayList(20);
Zapolnitev seznama ArrayList
Dodajanje elementov na koncu
Napolniti arilist je precej enostavno. Samo uporabite dodaj () način, da dodate en sam element na konec seznama. Tukaj je primer:
ArrayList alist = new ArrayList();
alist.add('apple');
alist.add('banana');
alist.add('cantaloupe');
alist.add('orange');
System.out.println(alist);
# prints
[apple, banana, cantaloupe, orange]
Če želite ugotoviti, koliko elementov je na seznamu aranžmajev, uporabite metodo velikost () .
System.out.println('Number of elements in the arraylist: ' + alist.size());
# prints
Number of elements in the arraylist: 4
Dodajanje elementov v določenem indeksu
Želite element dodati v poljuben indeks? Določite indeks kot prvi argument in element se doda temu indeksu:
alist.add(3, 'grapes');
System.out.println(alist);
# prints
[apple, banana, cantaloupe, grapes, orange]
Dodajanje kopice predmetov
V hierarhiji zbirk Java lahko dodate tudi predmete iz katere koli zbirke. An ArrayList je posebna vrsta, imenovana Seznam . Tukaj je način za izdelavo a Seznam iz kopice predmetov (z uporabo Arrays.asList () ) in ga dodajte v ArrayList .
List items = Arrays.asList('pear', 'cherry');
alist.addAll(items);
System.out.println(alist);
# prints
[apple, banana, cantaloupe, grapes, orange, pear, cherry]
Seveda lahko tukaj kot prvi argument navedete indeks za dodajanje elementov, ki se začnejo pri tem indeksu.
Dostop do elementov
Kako do elementov, ki smo jih dodali na seznam oglasov, znova dostopamo?
Dostop z indeksom
Če poznate indeks predmeta, lahko uporabite get () metoda za pridobivanje elementa po tem indeksu.
kako preveriti napetost z multimetrom
String item = alist.get(2);
System.out.println('Item at index 2 is: ' + item);
# prints
Item at index 2 is: cantaloupe
Iskanje predmetov
Kaj pa, če ne poznate indeksa predmeta? Lahko uporabiš indeks() da preverite, ali je element prisoten v matriki, in ga pridobite s pomočjo vrnjenega indeksa.
System.out.println(alist);
int index = alist.indexOf('orange');
if ( index <0 )
System.out.println('Item 'orange' not found');
else
System.out.println('Item 'orange' found at index ' + index);
# prints
[apple, banana, cantaloupe, grapes, orange, pear, cherry]
Item 'orange' found at index 4
Kaj pa, če element ni na seznamu vrstnih red? The indeks() metoda vrne -1, če elementa ni mogoče najti.
index = alist.indexOf('grape');
if ( index <0 )
System.out.println('Item 'grape' not found');
else
System.out.println('Item 'grape' found at index ' + index);
# prints
Item 'grape' not found
Iteracija preko ArrayList
Seveda je najpogostejša uporaba an ArrayList se ponavlja po elementih. To je mogoče doseči na več načinov. Tukaj prikazujemo nekaj preprostih.
Tu je najpreprostejši način ponovitve po aranžilistu in izvlečenja elementov za nekakšno obdelavo.
for (String fruit : alist) {
System.out.println('Found fruit '' + fruit + ''');
}
# prints
Found fruit 'apple'
Found fruit 'banana'
Found fruit 'cantaloupe'
Found fruit 'grapes'
Found fruit 'orange'
Found fruit 'pear'
Found fruit 'cherry'
Ta koda uporablja Java Enhanced For-Loop, ki je bila predstavljena v Javi 1.5. Pred tem bi lahko elemente ponavljali z iteratorjem. Iterator se uporablja tudi, kadar je to potrebno Odstrani elementov v procesu ponovitve, kot prikazuje spodnji primer. (Upoštevajte, da naredimo kopijo arilista in delamo na kopiji.)
ArrayList blist = new ArrayList(alist);
for (Iterator iter = blist.iterator() ; iter.hasNext() ; ) {
String fruit = iter.next();
if ( fruit.startsWith('c') )
iter.remove();
else
System.out.println('Keeping '' + fruit + ''');
}
# prints
Keeping 'apple'
Keeping 'banana'
Keeping 'grapes'
Keeping 'orange'
Keeping 'pear'
Zamenjava predmetov
Ko dodamo predmete, potrebujemo način, da nadomestimo neželene predmete. To lahko storite z uporabo set () metoda z indeksom.
alist.set(5, 'pineapple');
System.out.println(alist);
# prints
[apple, banana, cantaloupe, grapes, orange, pineapple, cherry]
Odstranjevanje predmetov
Zdaj pa poglejmo, kako lahko odstranimo elemente iz seznama elementov. Če poznate indeks predmeta (morda ste ga uporabili indeks() opisano zgoraj), lahko uporabite Odstrani() metoda z indeksom. Vrne odstranjeni element.
String fruit = alist.remove(2);
System.out.println('Removed element at 2: ' + fruit);
# prints
Removed element at 2: cantaloupe
Določite lahko tudi element, ki ga želite odstraniti prvi pojav elementa na seznamu. Metoda se vrne prav če je bil element najden in odstranjen.
kako povezati slušalke bluetooth na xbox one s
fruit = 'grapes';
System.out.println('Remove ' +fruit+ ' from the list? ' + alist.remove(fruit));
# prints
Remove grapes from the list? true
Kako uporabljate ArrayList v svojih projektih in s kakšnimi posebnimi vprašanji ste se soočili? Sporočite nam v spodnjih komentarjih.
Deliti Deliti Cvrkutati E-naslov Kako dostopati do Googlove vgrajene ravni mehurčkov v sistemu AndroidČe ste se kdaj morali prepričati, da je nekaj na nivoju, lahko zdaj v nekaj sekundah v telefonu dobite raven mehurčkov.
Preberite Naprej Sorodne teme- Programiranje
- Java
Naročite se na naše novice
Pridružite se našemu glasilu za tehnične nasvete, ocene, brezplačne e -knjige in ekskluzivne ponudbe!
Kliknite tukaj, če se želite naročiti