Java-variabler er con­tai­ne­re, der kan gemme for­skel­li­ge Java-datatyper. De omfatter lokale variabler, in­stansva­ri­ab­ler og statiske variabler. Selvom stør­rel­sen på Java-variabler ikke kan ændres ef­ter­føl­gen­de, kan du ændre deres indhold, efter du har oprettet dem.

Hvad er Java-variabler?

Alle pro­gram­me­rings­sprog har variabler, der bruges til at arbejde med koden i et program. Variabler er con­tai­ne­re, der gemmer data af en bestemt datatype (og kun data af den type). I Java kan variabler indeholde Javas primitive datatyper som hele tal, flydende tal, sand­heds­vær­di­er og in­di­vi­du­el­le cifre. De kan også gemme komplekse datatyper som Java-strenge. Variabler i Java har en specifik, klart defineret størrelse, der ikke kan ændres ef­ter­føl­gen­de. Indholdet af en variabel kan dog ændres senere. I denne vej­led­ning in­tro­du­ce­rer vi de for­skel­li­ge va­ri­ab­le­ty­per og viser, hvordan man opretter variabler til for­skel­li­ge datatyper.

Sådan de­kla­re­res og ini­ti­a­li­se­res var i Java

Det første, du skal vide, er, hvordan man de­kla­re­rer og ini­ti­a­li­se­rer Java-variabler. Denne proces er den samme for alle typer variabler. For at deklarere en variabel skal du bruge to parametre. Den første er den datatype, du vil gemme i variablen. Den anden er navnet på variablen.

Når du derefter ini­ti­a­li­se­rer variablen, er der 3 in­gre­di­en­ser. Du skal ikke kun bruge datatypen og navnet på variablen som ovenfor, men også en værdi for den. Ini­ti­a­li­se­ring af en variabel svarer til at tildele en værdi til en tidligere tom variabel.

Sådan ser syntaksen ud:

Datatype Name = Value;
java

Hvad er de tre va­ri­ab­le­ty­per i Java?

Der er tre typer variabler i Java: lokale variabler, in­stansva­ri­ab­ler og statiske variabler.

Lokale variabler

Lokale variabler i Java de­kla­re­res i kroppen af en metode, kon­struk­tør eller blok. Variablen kan derefter kun bruges inden for den på­gæl­den­de metode. Sådan ser det ud i praksis:

public class Main {
	public static void main(String[] args) {
		int var = 5;
		System.out.println("The local variable is: " + var);
	}
}
java

Re­sul­ta­tet vil se således ud:

The local variable is: 5
java

In­stansva­ri­ab­ler

In­stansva­ri­ab­ler oprettes inden for en klasse, men uden for en metode, kon­struk­tør eller blok. De opstår, når du opretter et objekt med nøg­le­or­det ‘new’. I mod­sæt­ning til lokale variabler har in­stansva­ri­ab­ler stan­dard­vær­di­er. For tal er stan­dard­vær­di­en 0 eller 0,0. For booleske værdier er den false. For ob­jek­t­re­fe­ren­cer er den null.

I det følgende eksempel kan du se, hvordan in­stansva­ri­ab­ler bruges i Java. I koden opretter vi en gruppe af personer, der ønsker at bidrage til en fød­sels­dags­ga­ve, og viser, hvad hver person har bidraget med.

public class Gift  {
	public String name;
	private double contribution;
	public Gift (String person) {
		name = person;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public double getContribution() {
		return contribution;
	}
	public void setContribution(double participantContribution) {	
		contribution = participantContribution;
	}
	public static void main(String[] args) {
		Gift participant = new Gift ("Peter");
		participant.setContribution(10);
		System.out.println("Name: " + participant.getName());
		System.out.println("Contribution = " + participant.getContribution());
		Gift participant2 = new Gift ("Maria");
		participant2.setContribution(15);
		System.out.println("Name: " + participant2.getName());
		System.out.println("Contribution  = " + participant2.getContribution());
	}
}
java

Her er re­sul­ta­tet for denne kode:

Name: Peter
Contribution = 10.0
Name: Maria
Contribution = 15.0
java

Statiske variabler

Mens de to andre Java-va­ri­a­bel­ty­per ikke kan de­kla­re­res statisk, kan statiske variabler det. De de­kla­re­res uden for en metode, kon­struk­tør eller blok og tilhører dermed klassen og ikke en instans. De bruges af alle instanser i en klasse. Statiske variabler tildeles hukom­mel­se, når klassen indlæses i hukom­mel­sen. Her er et eksempel i kode:

public class Gift {
	public static String participant = "Peter";
	public static void main(String[] args) {
		System.out.println("Participant: " + Gift.participant);
	}
}
java

Her er re­sul­ta­tet:

Participant: Peter
java

Sådan oprettes variabler med for­skel­li­ge datatyper

Processen med at oprette Java-variabler er ret ens på tværs af datatyper. Vi viser dig nogle eksempler på de mest al­min­de­li­ge datatyper og forklarer for­skel­le­ne mellem dem.

boolean

En boolsk variabel kan kun indeholde sand­heds­vær­di­er­ne sand eller falsk. Den de­kla­re­res som følger:

public class Main {
	public static void main(String[] args) {
		boolean pizzaTastesGood = true;
		System.out.println(pizzaTastesGood);
	}
}
java

Her er re­sul­ta­tet:

true
java

int

int er den mest al­min­de­ligt anvendte datatype til heltal. Du kan deklarere en Java-variabel for en int på følgende måde:

public class Main {
	public static void main(String[] args) {
		int x = 10;
		System.out.println(x);
	}
}
java

Her er re­sul­ta­tet:

10
java

flyde

float bruges til de­ci­mal­tal. Sådan de­kla­re­rer du en float-variabel i Java:

public class Main {
	public static void main(String[] args) {
		float x = -17.03f;
		System.out.println(x);
	}
}
java

Her er re­sul­ta­tet:

-17.03
java

char

char in­de­hol­der et enkelt tegn, der er angivet i enkelt an­før­sels­tegn. Sådan ser det ud i koden:

public class Main {
	public static void main(String[] args) {
		char x = 'S';
		System.out.println(x);
	}
}
java

Her er re­sul­ta­tet:

S
java

Streng

Ud over de primitive datatyper, vi har set på ovenfor, kan Java-variabler også indeholde komplette strenge. Strenge skal indtastes i dobbelte an­før­sels­tegn:

public class Main {
	public static void main(String[] args) {
		String example = "This is a string in Java.";
		System.out.println(example);
	}
}
java

Her er re­sul­ta­tet:

This is a string in Java.
java
Gå til ho­ved­me­nu­en