En vektor (array på engelska) i Java används för att lagra en samling av samma datatyp, men det går också bra att tänka på en vektor som en samling variabler av samma typ. Vektorer i Java fungerar på ett indexbaserat system där varje index i vektorn har ett värde av samma typ.

Hur deklareras vektorer?
På varierande sätt dessutom följer andra begrepp som instansiering och initiering.
int heltal[]; //vektor deklaration med namn heltal heltal[] = new int[10]; //vektor instansiering kallas när variabeln tilldelas ett värde i storlek. Det är som ett exempel på vad vektorn ska innehålla. heltal[0] = 10; //vektor initiering. I index 0 placeras ett heltal som 10 heltal[1] = 20; //Denna gång är index 1 som tar emot heltalet 20
En vektor kan också deklareras så här:
int[] heltal; int []heltal; int heltal[];
Exempel:
public class VektorDemo1 {
public static void main(String[] args) {
//vektor deklaration, instansiering och initiering
int heltal[] = {11, 22, 33, 44, 55}; // vektorns storlek eller längden räknas av Java automatiskt
//Skicka till skärmen vektorns innehåll
//egenskapen längden (length) returnerar vektors storlek
for(int i=0;i<heltal.length;i++)
System.out.println("Vektors index ["+i+"]: "+heltal[i]);
}
}
Returnerar:
Vektors index [0]: 11
Vektors index [1]: 22
Vektors index [2]: 33
Vektors index [3]: 44
Vektors index [4]: 55
Man kan skapa en vektor med element av andra datatyp, till exempel:
public class VektorDemo2 {
public static void main(String[] args) {
double[] d = {5.5, 3.5, 2.3, 3.4, 7.8};
char[] c = {'c', 'h', 'a', 'l', 'o'};
String[] progLang = {"C", "C++", "Java", "Python"};
for(int i=0;i<d.length;i++)
System.out.println("Vektors index ["+i+"]: "+d[i]);
for (int b=0;b<c.length;b++)
System.out.println("Vektors index ["+b+"]: "+c[b]);
for (int q=0;q<progLang.length;q++)
System.out.println("Vektors index ["+q+"]: "+progLang[q]);
}
}
Vektors element
En vektors innehåll kallas element, till exempel
char[] c = {’c’, ’h’, ’a’, ’l’, ’o’};
’c’, ’h’, ’a’, ’l’, ’o’ är vektorns innehåll. De kan också kallas som första, andra, tredje element och så vidare. Elementen kan ändras förutsatt att nya elementen är av samma typ som de gamla.
char[] c = {’c’, ’h’, ’i’, ’c’, ’o’};
Vektors längd
Längden på en vektor fastställs när den skapas:
int[] heltal = new int[3];
heltal[0] = 11;
heltal[1] = 12;
heltal[2] = 13;
heltal[3] = 14; // FEL! längden är 3 inte 4 element
Ett annat alternativ att ange längden (3 element) är så här:
int[] heltal = {11, 12, 13}
När längden har fastställts går det inte att ändra vektorns längden. Vektors längd definieras som ett konstantvärde eller FINAL. Med andra ord kan man inte minska eller öka antal element i vektorn i efterhand.
I Java kan vektorns längd tas fram med variabeln .length
public class VektorDemo3 {
public static void main(String[] args) {
double[] d = {5.5, 3.5, 2.3, 3.4, 7.8};
char[] c = {'c', 'h', 'a', 'l', 'o'};
String[] progLang = {"C", "C++", "Java", "Python"};
System.out.println("Vektor d längden är = " + d.length);
System.out.println("Vektor c längden är = " + c.length);
System.out.println(("Vektorn progLang längden är = " + progLang.length));
}
}
Typer av vektorer
- Endimensionella
- Flerdimensionella
Hittills har i denna artikeln behandlats endimensionella vektorer som har sina element i en enda dimension, i en sekvens av data lagrad horisontellt. Endimensionella vektorer representeras oftast som en rad, men det går bra också att tänka en representation som en kolumn. Som det redan tagits upp i raderna ovan varje element särskiljas med indexvärde.
Flerdimensionella vektorer
En kombination av flera endimensionella vektorer, till exempel tvådimensionella vektorer.
En tvådimensionell vektor i java representerar flera rader och kolumner med data. Data i matris- eller tabellform kan representeras genom att använda tvådimensionell vektor.

En matris är en grupp av element ordnade i många rader och kolumner. På samma sätt kan vi ordna element i tvådimensionella vektorer för att lagra element i en matris eller tabell så här:
public class VektorFlerDimensionell2 {
public static void main(String[] args) {
// Tvådimensionell
int[][] results = new int[3][5];
// Resultat för Alex
results[0][0] = 91;
results[0][1] = 85;
results[0][2] = 75;
results[0][3] = 88;
results[0][4] = 99;
// Resultat för Lukas
results[1][0] = 87;
results[1][1] = 75;
results[1][2] = 95;
results[1][3] = 98;
results[1][4] = 100;
// Resultat för Anna
results[2][0] = 100;
results[2][1] = 98;
results[2][2] = 92;
results[2][3] = 85;
results[2][4] = 85;
System.out.println("Student " + "|" + " Fysik " + "|" + " Matematik " + "|" + " Kemi "
+ "|" + " Historia " + "|" + " Idrott ");
System.out.println("Alex H \t" + " " + results[0][0] + "\t\t" + results[0][1] + " \t"
+ results[0][2] + " \t" + results[0][3] + " \t" + " " + results[0][4]);
System.out.println("Lukas T " + " " + results[1][0] + "\t\t" + results[1][1] + " \t"
+ results[1][2] + " \t" + results[1][3] + " \t" + " " + results[1][4]);
System.out.println("Anna L \t" + " " + results[2][0] + "\t\t" + results[2][1] + " \t"
+ results[2][2] + " \t" + results[2][3] + " \t" + " " + results[2][4]);
}
}
En förbättra version med hjälp av for loop:
Under arbete ………