Javalla, joukko on tärkein tietorakenne, joka sisältää samantyyppisiä elementtejä. Se tallentaa elementit vierekkäisiin muistivarauksiin. Tauluja on kahta tyyppiä, ts. staattinen matriisi ja dynaaminen matriisi. Tässä osiossa keskitymme vain staattinen taulukko Javassa .
Staattinen array
Staattisella avainsanalla ilmoitettua taulukkoa kutsutaan staattiseksi taulukoksi. Se varaa muistia käännöshetkellä, jonka koko on kiinteä. Emme voi muuttaa staattista taulukkoa.
merkkijonomenetelmään javassa
Jos haluamme taulukon koon perustuvan käyttäjän syötteeseen, emme voi käyttää staattisia taulukoita. Tällaisessa tapauksessa dynaamisten taulukoiden avulla voimme määrittää taulukon koon ajon aikana.
Esimerkki staattisesta taulukosta
Esimerkiksi int arr[10] luo taulukon, jonka koko on 10. Se tarkoittaa, että voimme lisätä vain 10 elementtiä; emme voi lisätä 11. elementtiä, koska Arrayn koko on kiinteä.
int arr[] = { 1, 3, 4 }; // static integer array int* arr = new int[3]; // dynamic integer array
Static Array -järjestelmän edut
- Sillä on tehokas suoritusaika.
- Staattisen varauksen käyttöikä on ohjelman koko ajoaika.
Staattisen taulukon haitat
- Jos staattista datatilaa ilmoitetaan enemmän kuin tarvitaan, on tilaa hukkaa.
- Jos staattista tilaa ilmoitetaan vähemmän kuin tarvitaan, tämän kiinteän koon laajentaminen ajon aikana tulee mahdottomaksi.
Staattisen taulukon ilmoittaminen
Staattisen taulukon ilmoittamisen syntaksi on:
[]={,,.....};
Esimerkiksi:
String[] suit = new String[] { 'Japan', 'India', 'Austria', 'Dubai' };
Voimme myös ilmoittaa ja alustaa staattisen taulukon seuraavasti:
String[] suit = { 'Japan', 'India', 'Austria', 'Dubai' };
Staattinen taulukko voidaan ilmoittaa myös listaksi. Esimerkiksi:
r c-kielellä
List suit = Arrays.asList( 'Japan', 'India', 'Austria', 'Dubai' );
Static Array Java-ohjelma
StaticArrayExample.java
java merkkijono char
public class StaticArrayExample { private static String[] array; static { array = new String[2]; array[0] = 'Welcome to'; array[1] = 'Javatpoint'; } public static void main(String args[]) { for(int i = 0; i <array.length; i++) { system.out.print(array[i] + ' '); } < pre> <p> <strong>Output:</strong> </p> <pre> Welcome to Javatpoint </pre> <p>Let's see another Java program.</p> <p> <strong>StaticArrayExample.java</strong> </p> <pre> public class StaticArrayExample2 { //creates a static array of integer type static Integer[] integerArray; static { integerArray = new Integer[] { new Integer(1), new Integer(2), new Integer(3), new Integer(4), new Integer(5)}; } public static void main(String args[]) { //loop iterate over static array for (int i = 0; i <integerarray.length; i++) { prints array elements system.out.println(integerarray[i]); } < pre> <p> <strong>Output:</strong> </p> <pre> 1 2 3 4 5 </pre> <h2>Difference Between Static Array and Dynamic Array</h2> <p>The following table describes the key differences between static array and dynamic array.</p> <table class="table"> <tr> <th>Static Array</th> <th>Dynamic Array</th> </tr> <tr> <td>Static arrays are allocated memory at compile time.</td> <td>Dynamic array is located at run-time.</td> </tr> <tr> <td>The size of static array is fixed.</td> <td>The size of dynamic array is fixed. </td> </tr> <tr> <td>It is located in stack memory space.</td> <td>It is located in heap memory space.</td> </tr> <tr> <td>int array[10]; //array of size 10</td> <td>int* array = new int[10];</td> </tr> </table> <hr></integerarray.length;></pre></array.length;>
Katsotaanpa toinen Java-ohjelma.
StaticArrayExample.java
public class StaticArrayExample2 { //creates a static array of integer type static Integer[] integerArray; static { integerArray = new Integer[] { new Integer(1), new Integer(2), new Integer(3), new Integer(4), new Integer(5)}; } public static void main(String args[]) { //loop iterate over static array for (int i = 0; i <integerarray.length; i++) { prints array elements system.out.println(integerarray[i]); } < pre> <p> <strong>Output:</strong> </p> <pre> 1 2 3 4 5 </pre> <h2>Difference Between Static Array and Dynamic Array</h2> <p>The following table describes the key differences between static array and dynamic array.</p> <table class="table"> <tr> <th>Static Array</th> <th>Dynamic Array</th> </tr> <tr> <td>Static arrays are allocated memory at compile time.</td> <td>Dynamic array is located at run-time.</td> </tr> <tr> <td>The size of static array is fixed.</td> <td>The size of dynamic array is fixed. </td> </tr> <tr> <td>It is located in stack memory space.</td> <td>It is located in heap memory space.</td> </tr> <tr> <td>int array[10]; //array of size 10</td> <td>int* array = new int[10];</td> </tr> </table> <hr></integerarray.length;>
Ero staattisen taulukon ja dynaamisen taulukon välillä
Seuraavassa taulukossa kuvataan tärkeimmät erot staattisen ja dynaamisen taulukon välillä.
Staattinen array | Dynaaminen Array |
---|---|
Staattisille taulukoille varataan muistia käännöshetkellä. | Dynaaminen matriisi sijaitsee ajon aikana. |
Staattisen taulukon koko on kiinteä. | Dynaamisen taulukon koko on kiinteä. |
Se sijaitsee pinomuistitilassa. | Se sijaitsee kasamuistitilassa. |
int array[10]; //joukko kokoa 10 | int* array = uusi int[10]; |