for-loopen kan användas i alla sammanhang men den är nog fiffigast när vi i förväg vet hur många iterationer som ska utföras.
int i;
System.out.println("for-loopen");
for (i=0; i<=9; i++) {
System.out.println("i="+i);
}
System.out.println("For-loopen är slut. i="+i);
//Vilket värde på i kommer att skrivas ut?
Kriterierna för for-satsen är tre:
Ett annat exempel:
double belopp;
double sum=0.0;
int antal;
Scanner scan = new Scanner(System.in);
System.out.println("Ge antal kvitton:");
antal = scan.nextInt();
for (int i=1; i<= antal; i++) {
System.out.println("Ge belopp " + i + ":");
belopp = scan.nextDouble();
sum=sum + belopp; //uppdatera räknaren "sum"
} //slut på for-satsen
//Skriv ut summan
System.out.println("Summan=" + sum);
Exempel på en körning där fet stil är vad användaren matar in: :
Ge antal kvitton: 3 Ge belopp 1: 29.50 Ge belopp 2: 34.76 Ge belopp 3: 8.90 Summan=73.16
while-loopen kan också användas i alla sammanhang även när man inte från början vet hur många gånger loopen kommer att köras.
System.out.println("while-loopen");
int i=0; //initialisering: innan loopen
while( i<10 ) { //upprepningsvillkor
System.out.println("i="+i);
i++; //förändring
}
System.out.println("While-loopen är slut");
Allmän form
while-loop.
Mata in belopp som ska summeras, avsluta med att skriv 0. 29.50 Ge belopp: 34.76 Ge belopp: 8.90 Ge belopp: 0 Summan=73.16
do-while-loopen kan också användas i alla sammanhang även när man inte från början vet hur många gånger loopen kommer att köras. Skillnaden är att loopen alltid körs minst en gång innan villkoret testas!
System.out.println("do-while-loopen");
int i=0;
do {
System.out.println("i="+i);
i++;
} while(i<10);
System.out.println("Do-while-loopen är slut");
Allmän form
break hoppar man ur en loop. continue hoppar man över de satser i loopens huvud som inte är utförda.
Ex.
nr är en referens som pekar på arrayen, dvs nr blir en objektvariabel. Elementen nollställs när arrayen skapas!nr[0], andra elementet som nr[1] etc.
int[] nr = new int[100];
deklareras alltså en referens till arrayen som heter nr. Typen är int[]. Arrayen instansieras med new-operatorn. int och char.
Jämför med en referens t1 till ett Turtle-objekt 
nr12.double[] a; betyder att jag får en array-variabel. Det är en speciell typ av referensvariabel som kan referera till en array, inte till en vanlig variabel. Typen är double[] , jämför den enkla datatypen double. Alla elementen måste då vara av typen double.
java.util.Arrays för att behandla arrayer. Man kan t ex undersöka om två arrayer f och g är lika genom att skriva
a i stigande ordning.
Ett exempel från en lektion
Under en lektion behandlade ni bilder genom att behandla alla pixlar var för sig på ett visst sätt, till exempel reducerade ni den röda komponenten i varje pixel. Det innebar att ni gjorde samma sak många gånger och ni använde er då av en loop för att utföra rödhetsreduceringen:
Sammanfattning
new.
int[] nr = new int[100]; blir nr en referens som pekar på en array med 100 integers.
length, t ex nr.length ger 100. Konstanten length finns sparad med objektet, dvs arrayen. length är array-objektens enda instansvariabel och är deklarerad som public final int.)
double och char.
.length och antal antal som anger hur många element man hittills lagt in i arrayen. Konstanten length ger alltid maximala kapaciteten arrayen deklarerats till, och det är inte alltid vi vill veta det. Tänk på att antal måste vara mindre än eller lika med length. Om det finns antal tal i arrayen, så ligger de på index 0, 1, ..., antal-1. Loopar ser typiskt ut så här:
arr är deklarerad till längden 20. Just nu finns det antal element och vi vill lägga till ett till, nämligen värdet i variabeln tal. Så här kan koden se ut:
if (antal < arr.length) { //OBS! Inte antal <= arr.length Varför?
arr[antal] = tal; //OBS! antal ger även index på nästa lediga element!
antal++;
}
else
System.out.println("Fullt");