Java nyelven, sor és Tömb lista a jól ismert adatszerkezetek. A tömb a Java által biztosított alapvető funkció, míg Tömb lista a Java Collections keretrendszer egy osztálya. hozzátartozik java.util csomag.
Java tömb
An sor egy dinamikusan létrehozott objektum. Konténerként szolgál, amely az azonos típusú értékek állandó számát tartalmazza. Van egy összefüggő memóriahelye. A tömb létrehozása után nem tudjuk megváltoztatni a méretét. Tömböt hozhatunk létre a következő utasítással:
int array[]=new int[size];
A fenti utasítás egy megadott méretű tömböt hoz létre. Ha a méreténél többet próbálunk hozzáadni, akkor dob ArrayIndexOutOfBoundsException . Például:
int arr[]=new int[3]; //specified size of array is 3 //adding 4 elements into array arr[0]=12; arr[1]=2; arr[2]=15; arr[3]=67;
Java ArrayList osztály
Java nyelven, Tömb lista a Collections keretrendszer egy osztálya. Megvalósítja Lista, Gyűjtemény, Iterálható, Klónozható, Sorosozható , és RandomAccess interfészek. Kiterjed AbstractList osztály.
Létrehozhatjuk az ArrayList példányát a következő utasítás használatával:
ArrayList arrayList=new ArrayList();
Az ArrayList belsőleg a Java tömb által támogatott. Az ArrayList átméretezési művelete lelassítja a teljesítményt, mivel új tömböt jelent, és a tartalmat egy régi tömbből új tömbbe másolja. Meghívja a natív implementált metódust System.arraycopy(sec, srcPos, dest, destPos, long) .
Nem tárolhatunk primitív típust az ArrayListben. Tehát csak tárgyakat tárol. A primitív típust automatikusan objektummá alakítja. Például létrehoztunk egy ArrayList objektumot,
ArrayList list=new ArrayList(); //object of ArrayList arrayObj.add(12); //trying to add integer primitive to the ArrayList
A JVM egész objektummá alakítja át az automatikus dobozolás révén.
ArrayList arrayObj=new ArrayList()//object of ArrayList arrayObj(new Integer(12)); //converts integer primitive to Integer object and added to ArrayList object
Hasonlóságok
- Az Array és az ArrayList egyaránt használható elemek tárolására.
- Az Array és az ArrayList egyaránt null értékeket tárolhat.
- Megkettőző értékeik lehetnek.
- Nem őrzik meg az elemek sorrendjét.
Az alábbi táblázat leírja a tömb és az ArrayList közötti legfontosabb különbségeket:
Alap | Sor | Tömb lista |
---|---|---|
Meghatározás | An sor egy dinamikusan létrehozott objektum. Konténerként szolgál, amely az azonos típusú értékek állandó számát tartalmazza. Van egy összefüggő memóriahelye. | A Tömb lista a Java egy osztálya Gyűjtemények keretrendszer. Olyan népszerű osztályokat tartalmaz, mint pl Vektor, HashTable , és HashMap . |
Statikus/ Dinamikus | A tömb az statikus méretben. | Az ArrayList az dinamikus méretben. |
Átméretezhető | Egy tömb a fix hosszúságú adatszerkezet. | Az ArrayList egy változó hosszúságú adatszerkezet. Szükség esetén önmagában is átméretezhető. |
Inicializálás | Kötelező megadni a tömb méretét, miközben közvetlenül vagy közvetve inicializálja. | Létrehozhatunk egy ArrayList példányt a méretének megadása nélkül. A Java létrehozza az alapértelmezett méretű ArrayList-et. |
Teljesítmény | Ez teljesít gyors az ArrayListhez képest a rögzített méret miatt. | Az ArrayList belsőleg a Java tömb által támogatott. Az ArrayList átméretezési művelete lelassítja a teljesítményt. |
Primitív/ általános típus | Egy tömb mindkettőt tárolhatja tárgyakat és primitívek típus. | Nem tudjuk tárolni primitív írja be az ArrayList-be. A primitív típust automatikusan objektummá alakítja. |
Értékek ismétlése | Használjuk számára hurok ill az egyes hurok egy tömbön keresztül történő iterációhoz. | Használunk egy iterátor az ArrayList feletti iterációhoz. |
Típus-biztonság | Nem használhatunk általánosakat a tömbök mellett, mert ez nem konvertálható tömbtípus. | Az ArrayList csak tárolást tesz lehetővé generikus/ típus, ezért típusbiztos. |
Hossz | A tömb biztosítja a hossz változó, amely egy tömb hosszát jelöli. | Az ArrayList biztosítja a méret() módszer az ArrayList méretének meghatározására. |
Elemek hozzáadása | A tömbhöz elemeket adhatunk hozzá a feladat operátor. | A Java biztosítja a add() módszer elemek hozzáadásához az ArrayListhez. |
Egy-/többdimenziós | Tömb lehet többdimenziós . | ArrayList mindig egydimenziós . |
Példa a tömbre Java-ban
A következő példában egyszerűen létrehoztunk egy négy hosszúságú tömböt.
public class ArrayExample { public static void main(String args[]) { //creating an array of integer type int arr[]=new int[4]; //adding elements into array arr[0]=12; arr[1]=2; arr[2]=15; arr[3]=67; for(int i=0;i <arr.length;i++) { system.out.println(arr[i]); } < pre> <p> <strong>Output:</strong> </p> <pre> 12 2 15 67 </pre> <h2>Example of ArrayList in Java</h2> <p>In the following example, we have created an instance of ArrayList and performing iteration over the ArrayList.</p> <pre> import java.util.*; public class ArrayListExample { public static void main(String args[]) { //creating an instance of ArrayList List list = new ArrayList(); //adding element to arraylist list.add(12.4f); list.add(34.6f); list.add(56.8f); list.add(78.9f); //iteration over ArrayList using for-each loop for(Float f:list) { System.out.println(f); } } } </pre> <p> <strong>Output:</strong> </p> <pre> 12.4 34.6 56.8 78.9 </pre> <hr></arr.length;i++)>
Példa az ArrayList-re Java-ban
A következő példában létrehoztuk az ArrayList egy példányát, amely iterációt hajt végre az ArrayList felett.
import java.util.*; public class ArrayListExample { public static void main(String args[]) { //creating an instance of ArrayList List list = new ArrayList(); //adding element to arraylist list.add(12.4f); list.add(34.6f); list.add(56.8f); list.add(78.9f); //iteration over ArrayList using for-each loop for(Float f:list) { System.out.println(f); } } }
Kimenet:
hogyan lehet kitörni a while ciklusból a java
12.4 34.6 56.8 78.9