Skapa en Array i Java


Det finns flera olika sätt att deklarera, skapa en array i Java med olika för och nackdelar. 

Egenskaper hos Array i Java

Med en array kan vi spara flera värden samtidigt i en variabel. Vi ska nu se två olika tillvägagångssätt (som vi har valt att kalla Tillvägagångssätt 1 och Tillvägagångssätt 2) för att skapa en endimensionell array i Java. De båda tillvägagångssätten är snarlika med varandra med skillnaden att det andra tillvägagångssättet går snabbare att initiera, helst för lite större array med flera element.

Första indexet i en Array i Java börjar alltid på 0!

Viktigt att tänka på när vi skapar en Array i Java

Ett par punkter som är bra att tänka på för att inte göra enkla fel när vi skapar en Array är:

  • Efter vald datatyp så behöver vi skriva två hakparenteser [ ] så kompilatorn vet att det är ett fält vi vill initiera.
  • Indexering börjar alltid på 0, det vill säga första värdet får index 0. Andra värdet får index 1 och så vidare.
  • Oinitierade heltal får alltid värdet 0 och oinitierade datatyper får alltid värdet null.
  • Alla värden i en array måste vara av samma datatyp. Exempelvis kan du inte spara en double i ett fält med datatypen int.
  • Det går inte ändra antal element i en array efter att den har skapats.

Skapa en Array i Java: Tillvägagångssätt 1

Ett sätt att deklarera (skapa) en array i Java är med följande syntax:

datatyp[] namn = new datatyp[antal element];

Det vill säga,

  • Först anger man vilken datatyp array innehåller, följt av en hakparentes [ ].
  • Sedan ger man ett namn på Array följt av “= new datatyp”. Datatypen måste vara densamma vid båda tillfällena.
  • Avslutningsvis anger man antal element som Array ska innehålla inom hakparentesen, följt av semikolon.

Exempel: Deklarera en Array i Java med tillvägagångssätt 1

Om vi börjar med att skapa en Array som inte innehåller några element.

int[] field = new int [4];

Vi har nu skapat ett fält av datatypen int med namnet field, fältet innehåller fyra element och under varje element står index för respektive element. Eftersom vi inte initierade något startvärde för elementen i fältet så har de alla automatiskt tilldelats värdet 0.

Notera att som nämnt ovan så börjar första elementet med index 0.

Vidare, vill vi sedan spara ned värden i fältet så når vi varje element med hjälp av dess index.

field[0] = 22; 
field[1] = 8;  
field[2] = 97;  
field[3] = 3;

Vi har nu med hjälp av respektive elements index sparat ned värden i fältet field

Skapa en Array i Java: Tillvägagångssätt 2

Istället för att skapa Array med new och sedan spara ned värden i varje element så kan vi initiera värden till Array direkt vid deklaration. Vi skapar Array genom att skriva:  

Datatyp[] namn = { värde, värde, värde, värde, … } ;

Notera att det är måsvingar, { } , som används till höger om lika med tecknet.

Exempel: Deklarera en Array i Java med tillvägagångssätt 2

Vill vi skapa fältet field som vi använde i tillvägagånsätt 1 så skriver vi helt enkelt

int[] field = {22, 8, 97, 3};

Med hjälp av en rad kod har vi skapat ett fält av datatypen int med namnet field, fältet innehåller fyra element och har initierade värden. Det går självklart att skapa både större och mindre fält med den här metoden också.

Vi kan använda, läsa av och redigera varje element i fältet med hjälp av index på samma sätt som i tillvägagångssätt 1.

Val av tillvägagångssätt för att deklarera Array i Java

Hur ska man resonera kring vilken av tillvägagångssätten som är bäst att välja? En bra tumregel (som kan verka självklar) är att

  • Ifall en array inte har initierade värden eller många element som inte har initierade värden så är tillvägagångssätt 1 att föredra.
  • En array där varje element har ett startvärde så är tillvägagångssätt 2 smidigare och snabbare att använda sig av.

Känner du dig osäker på fält och hur de är uppbyggda och deklareras så använd dig av tillvägagångssätt 1. Den tar lite längre tid att deklarera och är mer utförlig, men det kan bidra till att öka förståelsen. Använd gärna papper och penna också ifall du känner dig osäker på hur fältet du arbetar med ser ut. Rita upp rutorna och sätt ut index och försök skapa dig en bild av fältets utformning och vilket värde som borde vara på vilken plats.

Vad tyckte du om sidan?

Lämna gärna feedback och hjälp oss göra sidan bättre

Feedback gör oss bättre!

Lämna gärna feedback om vad du tyckte om avsnittet!