Hoofdstuk 10 — Arrays en Strings (reeksen van gegevens en tekstbewerking)
In dit hoofdstuk leer je hoe je met meerdere waarden tegelijk werkt via arrays, en hoe je Strings effectief gebruikt en manipuleert. We bespreken declaratie, indexering, iteratie, veelgebruikte methoden en valkuilen (zoals out-of-bounds en immutability).
Voorbeeld 1 — Array declareren en gebruiken
public class ArrayBasis {
public static void main(String[] args) {
int[] cijfers = {7, 8, 9};
System.out.println(cijfers[0]); // 7
System.out.println(cijfers.length); // 3
}
}
Voorbeeld 2 — Array itereren (for en foreach)
public class ArrayIteratie {
public static void main(String[] args) {
String[] namen = {"Kim", "Bo", "Saar"};
for (int i = 0; i < namen.length; i++) {
System.out.println(i + ": " + namen[i]);
}
for (String n : namen) {
System.out.println(n);
}
}
}
Voorbeeld 3 — Arrays vullen en standaardwaarden
public class ArrayVullen {
public static void main(String[] args) {
int[] arr = new int[5]; // standaardwaarden 0
for (int i = 0; i < arr.length; i++) {
arr[i] = i * i;
}
for (int v : arr) System.out.println(v);
}
}
Voorbeeld 4 — Out-of-bounds fout
public class OutOfBoundsDemo {
public static void main(String[] args) {
int[] a = {1, 2, 3};
// System.out.println(a[3]); // ArrayIndexOutOfBoundsException
}
}
Voorbeeld 5 — String basis en immutability
public class StringBasis {
public static void main(String[] args) {
String tekst = "Java";
System.out.println(tekst.length());
System.out.println(tekst.toUpperCase());
System.out.println(tekst); // tekst blijft "Java"
}
}
Voorbeeld 6 — String methoden (substring, contains, replace)
public class StringMethoden {
public static void main(String[] args) {
String s = "Programmeren in Java";
System.out.println(s.substring(0, 12)); // "Programmeren"
System.out.println(s.contains("Java"));
System.out.println(s.replace("Java", "Kotlin"));
}
}
Voorbeeld 7 — String vergelijken en trimmen
public class StringVergelijkingEnTrim {
public static void main(String[] args) {
String a = " java ";
String b = "Java";
System.out.println(a.trim().equalsIgnoreCase(b)); // true
}
}
Voorbeeld 8 — StringBuilder voor efficiënte concatenatie
public class StringBuilderConcat {
public static void main(String[] args) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < 5; i++) sb.append(i).append(", ");
System.out.println(sb.toString());
}
}
Voorbeeld 9 — Arrays utility (java.util.Arrays)
import java.util.Arrays;
public class ArraysUtilities {
public static void main(String[] args) {
int[] a = {3, 1, 2};
Arrays.sort(a);
System.out.println(Arrays.toString(a));
int idx = Arrays.binarySearch(a, 2);
System.out.println("index van 2: " + idx);
}
}
Tips:
- Onthoud dat array-indexen bij 0 beginnen en eindigen bij
length - 1. - Strings zijn immutable; gebruik StringBuilder bij veel concatenaties in lussen.
- Pas op met
substring-indices; ze zijn halfopen:[begin, eind).
Koppeling met oefeningen:
- Zie
java-workbook/src/chapter_10.mdvoor arrays- en stringoefeningen. - Uitwerkingen in
java-solutions/src/chapter_10.md.