Vad är Java Array?
Java Array är en mycket vanlig typ av datastruktur som innehåller alla datavärden av samma datatyp. Dataposterna i matrisen kallas element och det första elementet i matrisen börjar med index noll. Arrays ärver objektklassen och implementerar de seriösa och klonbara gränssnitten. Vi kan lagra primitiva värden eller objekt i en matris.
Med enkla ord är det en programmeringskonstruktion som hjälper till att ersätta detta
x0=0;x1=1;x2=2;x3=3;x4=4;x5=5;
med detta
...x[0]=0;x[1]=1;x[2]=2;x[3]=3;x[4]=4;x[5]=5;
I den här handledningen lär du dig-
- Vad är en matris?
- Arrayvariabler
- Första Array-programmet
- Java Array: Passera som referens
- Flerdimensionella matriser
hur detta hjälper är att en variabel kan referera till indexet (numret i parentes []) för enkel looping.
for(count=0; count<5; count++) {System.out.println(x[count]);}
Arrayvariabler
Att använda en matris i ditt program är ett tre steg
process -1) Förklara din matris
2) Konstruera din matris 3) Initiera din matris
1) Förklara din matris
Syntax
[] ;
eller
[];
Exempel:
int intArray[];// Defines that intArray is an ARRAY variable which will store integer valuesint []intArray;
2) Konstruera en matris
arrayname = new dataType[]
Exempel:
intArray = new int[10]; // Defines that intArray will store 10 integer values
Deklaration och konstruktion kombinerat
int intArray[] = new int[10];
3) Initiera en matris
intArray[0]=1; // Assigns an integer value 1 to the first element 0 of the arrayintArray[1]=2; // Assigns an integer value 2 to the second element 1 of the array
Deklarera och initiera en matris
[] = {};
Exempel:
int intArray[] = {1, 2, 3, 4};// Initilializes an integer array of length 4 where the first element is 1 , second element is 2 and so on.
Första Array-programmet
Steg 1) Kopiera följande kod till en redigerare.
class ArrayDemo{public static void main(String args[]){int array[] = new int[7];for (int count=0;count<7;count++){array[count]=count+1;}for (int count=0;count<7;count++){System.out.println("array["+count+"] = "+array[count]);}//System.out.println("Length of Array = "+array.length);// array[8] =10;}}
Steg 2) Spara, kompilera och köra koden. Observera utdata
Produktion:
array[0] = 1array[1] = 2array[2] = 3array[3] = 4array[4] = 5array[5] = 6array[6] = 7
Steg 3) Om x är en referens till en matris ger x.length dig längden på matrisen.
Kommentarrad # 10. Spara, kompilera och köra koden. Observera utdata
Length of Array = 7
Steg 4) Till skillnad från C kontrollerar Java gränsen för en matris medan den öppnar ett element i den. Java tillåter inte programmeraren att överskrida dess gräns.
Kommentarrad # 11. Spara, kompilera och köra koden. Observera utdata
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 8at ArrayDemo.main(ArrayDemo.java:11)Command exited with non-zero status 1
Steg 5) ArrayIndexOutOfBoundsException kastas. I fallet C skulle samma kod ha visat något avfallsvärde.
Java Array: Passera som referens
Arrayer skickas till funktioner genom referens eller som en pekare till originalet. Detta betyder att allt du gör för Array inuti funktionen påverkar originalet.
Exempel: Att förstå Array skickas genom referens
Steg 1) Kopiera följande kod till en redigerare
class ArrayDemo {public static void passByReference(String a[]){a[0] = "Changed";}public static void main(String args[]){String []b={"Apple","Mango","Orange"};System.out.println("Before Function Call "+b[0]);ArrayDemo.passByReference(b);System.out.println("After Function Call "+b[0]);}}
Steg 2) Spara, kompilera och köra koden. Observera utdata
Produktion:
Before Function Call AppleAfter Function Call Changed
Flerdimensionella matriser
Flerdimensionella arrayer är faktiskt arrays of arrays.
För att deklarera en flerdimensionell arrayvariabel anger du varje ytterligare index med en annan uppsättning hakparenteser.
Ex: int twoD[ ][ ] = new int[4][5] ;
När du tilldelar minne för en flerdimensionell matris behöver du bara ange minnet för den första dimensionen (längst till vänster).
Du kan fördela de återstående dimensionerna separat.
I Java är arraylängd för varje array i en flerdimensionell array under din kontroll.
Exempel
public class Guru99 {public static void main(String[] args) {// Create 2-dimensional array.int[][] twoD = new int[4][4];// Assign three elements in it.twoD[0][0] = 1;twoD[1][1] = 2;twoD[3][2] = 3;System.out.print(twoD[0][0] + " ");}}
Produktion:
1