A Java ArrayList használata

A Java ArrayList használata

Java -ra Tömb lista egy általános célú átméretezhető tömb. Ez biztosítja a legtöbb olyan szolgáltatást, amelyet általában más nyelvek tömbjeitől várnak. Ezek közé tartozik: az elemek elérése index használatával, elemek hozzáadása, eltávolítása és frissítése, dinamikus átméretezés, iterálás az elemek felett stb. A legtöbb ilyen műveletet kifejezetten általános célokra módosították.





miért nem működik a ps4 vezérlőm?

Van néhány más típusú „tömb” (osztály, amely a Lista technikai felület), amelyeket speciális célokra szántak. Ezek tartalmazzák:





  • LinkedList támogatja a gyors behelyezést és eltávolítást a közbenső indexeknél.
  • Vektor hasonló az an Tömb lista de szinkronizálva van és alkalmas egy helyére Tömb lista többszálas alkalmazásokhoz.
  • Kazal támogatja az utolsóként első listát utánzó műveleteket. Kiterjeszti a Vektor és ezért szinkronban van.

Ezek a speciális osztályok nem tartoznak e cikk hatálya alá. Mindazonáltal megtanulja, hogyan kell beállítani és használni egy általános célú Java ArrayList-et.





ArrayList létrehozása

Létrehozása egy Tömb lista egyszerű. Egy üres Tömb lista az argumentumok nélküli konstruktor használatával hozható létre. Itt létrehozunk egy üres tömblistát a karakterláncok tartására.

ArrayList alist = new ArrayList();

Ha véletlenül tudja, hogy a tömblistája hány elemet tartalmaz, megadhatja a kezdeti kapacitást. Ez a kezdeti kapacitás csak tipp a memóriakiosztáshoz - az arraylist nem korlátozódik a megadott számú elem tárolására. Ha ismeri és megadja a kezdeti kapacitást, akkor esetleg némi javulást a teljesítményben.



ArrayList alist = new ArrayList(20);

ArrayList feltöltése

Elemek hozzáadása a végén

Egy tömblista feltöltése nagyon egyszerű. Csak használja a hozzá () módszer egyetlen elem hozzáadásához a tömblista végéhez. Íme egy példa:

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]

A módszer segítségével megtudhatja, hány elem van a tömblistában méret() .





System.out.println('Number of elements in the arraylist: ' + alist.size());
# prints
Number of elements in the arraylist: 4

Elemek hozzáadása meghatározott indexen

Hozzá szeretne adni egy elemet tetszőleges indexhez? Adja meg az indexet első argumentumként, és az elem hozzáadódik ehhez az indexhez:

alist.add(3, 'grapes');
System.out.println(alist);
# prints
[apple, banana, cantaloupe, grapes, orange]

Egy csomó elem hozzáadása

A Java gyűjteményhierarchia bármely gyűjteményéből is hozzáadhat elemeket. An Tömb lista egy speciális típus az ún Lista . Itt van egy módszer a Lista egy csomó elemből (használatával Arrays.asList () ), és adja hozzá a Tömb lista .





List items = Arrays.asList('pear', 'cherry');
alist.addAll(items);
System.out.println(alist);
# prints
[apple, banana, cantaloupe, grapes, orange, pear, cherry]

Természetesen itt megadhat egy indexet első érvként, ha hozzá szeretné adni az indextől kezdődő elemeket.

Elemek elérése

Miután hozzáadtuk az elemeket a tömblistához, hogyan férhetünk hozzá újra?

Hozzáférés index segítségével

Ha ismeri az elem indexét, használhatja a kap() módszer az elem lekérésére az indexen.

különbség az Intel Core i3 és i5 között
String item = alist.get(2);
System.out.println('Item at index 2 is: ' + item);
# prints
Item at index 2 is: cantaloupe

Elemek keresése

Mi van, ha nem ismeri az elem indexét? Te tudod használni indexe() hogy ellenőrizze, hogy az elem jelen van -e a tömbben, és lekérje az elemet a visszaadott index segítségével.

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

Mi van, ha az elem nincs jelen a tömblistában? Az indexe() metódus -1 -et ad vissza, ha az elem nem található.

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

Iterating Over ArrayList

Természetesen az an leggyakoribb használata Tömb lista iterál az elemek felett. Ezt számos módon lehet megvalósítani. Itt mutatunk néhány egyszerűt.

Itt a legegyszerűbb módja annak, hogy iteráljunk egy tömblistán, és kivonjuk az elemeket valamilyen feldolgozásra.

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'

Ez a kód a Java 1.5-ben bevezetett Java Enhanced For-Loop programot használja. Ezt megelőzően iterátorral megismételheti az elemeket. Szükség esetén iterátort is használnak távolítsa el elemeket az iterációs folyamat során, amint azt az alábbi példa illusztrálja. (Vegye figyelembe, hogy másolatot készítünk a tömblistáról, és dolgozunk a másoláson.)

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'

Elemek cseréje

Az elemek hozzáadása után szükségünk van a nem kívánt elemek pótlására. Ez megtehető a készlet() módszer mutatóval.

alist.set(5, 'pineapple');
System.out.println(alist);
# prints
[apple, banana, cantaloupe, grapes, orange, pineapple, cherry]

Elemek eltávolítása

Most nézzük meg, hogyan távolíthatjuk el az elemeket egy tömblistáról. Ha ismeri az elem indexét (talán használta indexe() fentebb leírt), használhatja a eltávolítani () módszer az index segítségével. Visszaadja az eltávolított elemet.

String fruit = alist.remove(2);
System.out.println('Removed element at 2: ' + fruit);
# prints
Removed element at 2: cantaloupe

Megadhatja az eltávolítani kívánt elemet is első az elem előfordulása a listában. A módszer visszatér igaz ha az elemet megtalálták és eltávolították.

hogyan továbbít egy szöveget az iPhone -on
fruit = 'grapes';
System.out.println('Remove ' +fruit+ ' from the list? ' + alist.remove(fruit));
# prints
Remove grapes from the list? true

Hogyan használja a Tömb lista projektjeiben és milyen különleges problémákkal szembesült? Kérjük, tudassa velünk az alábbi megjegyzésekben.

Részvény Részvény Csipog Email Hogyan érheti el a Google beépített buborékszintjét Androidon

Ha valaha is szüksége volt arra, hogy megbizonyosodjon arról, hogy valami vízszintesen van -e, akkor pillanatok alatt buborékszintet kaphat a telefonján.

Olvassa tovább
Kapcsolódó témák
  • Programozás
  • Jáva
A szerzőről Jay Sridhar(17 cikk megjelent) Bővebben: Jay Sridhar

Iratkozzon fel hírlevelünkre

Csatlakozz hírlevelünkhöz, ahol technikai tippeket, értékeléseket, ingyenes e -könyveket és exkluzív ajánlatokat találsz!

Feliratkozáshoz kattintson ide