String.format
Bouw geformatteerde tekenreeksen.
String.format is een gratis Java Academy-les op CoddyKit. Dit is les 3 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Java Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Java Academy bevat in totaal 4 lessen.
Opmaken zonder afdrukken
printf stuurt tekst rechtstreeks naar de console. Soms wil je de opgemaakte tekst echter als een String hebben om die op te slaan, terug te geven of opnieuw te gebruiken.
String.format doet precies dat: dezelfde regels, maar de methode geeft een waarde terug in plaats van die af te drukken.
Je eerste String.format
String.format gebruikt dezelfde plaatshouders als printf. De methode bouwt een nieuwe tekenreeks en geeft die aan je terug.
Hier wordt het resultaat opgeslagen in msg en daarna afgedrukt.
public class Main {
public static void main(String[] args) {
String msg = String.format("Hello, %s!", "World");
System.out.println(msg);
}
}Dezelfde specificaties
Alles wat je hebt geleerd blijft van toepassing: %d, %f, %.2f, breedtes en vlaggen werken allemaal in String.format.
Het enige verschil is dat het resultaat wordt teruggegeven en niet weergegeven.
public class Main {
public static void main(String[] args) {
String s = String.format("%s: %.2f", "Price", 9.5);
System.out.println(s);
}
}Het resultaat opslaan
Omdat de methode een String teruggeeft, kun je die in een variabele bewaren, samenvoegen of aan een andere methode doorgeven.
Dit is handig om berichten stap voor stap op te bouwen.
public class Main {
public static void main(String[] args) {
String label = String.format("#%03d", 7);
System.out.println("ID " + label);
}
}Opgemaakte tekst teruggeven
Een methode kan String.format gebruiken om een nette tekenreeks terug te geven. Zo blijft de opmaaklogica op één plek.
Hieronder geeft greet de opgemaakte begroeting terug.
public class Main {
static String greet(String name) {
return String.format("Welcome, %s!", name);
}
public static void main(String[] args) {
System.out.println(greet("Mia"));
}
}Geen automatisch regeleinde
Net als printf voegt String.format geen regeleinde toe, tenzij je \n in de opmaakreeks schrijft.
Als je het resultaat met println afdrukt, wordt het regeleinde voor je toegevoegd.
public class Main {
public static void main(String[] args) {
String s = String.format("Line one");
System.out.println(s);
}
}Meerdere waarden
Je kunt net zoveel argumenten doorgeven als er plaatshouders zijn. Ze vullen de posities van links naar rechts, net als bij printf.
Zo kun je eenvoudig een rij gegevens als één tekenreeks opbouwen.
public class Main {
public static void main(String[] args) {
String row = String.format("%s | %d | %.1f", "Tea", 3, 2.5);
System.out.println(row);
}
}Een opmaak hergebruiken
Omdat de opmaakreeks gewoon tekst is, kun je die met een lus meerdere keren toepassen om consistente tekenreeksen te produceren.
Elke aanroep geeft een nieuwe tekenreeks met nieuwe waarden terug.
public class Main {
public static void main(String[] args) {
for (int i = 1; i <= 3; i++) {
System.out.println(String.format("Item %d", i));
}
}
}printf gebruikt intern format
Onder de motorkap gedraagt System.out.printf(fmt, args) zich als het afdrukken van String.format(fmt, args).
De keuze tussen beide gaat dus eigenlijk over de vraag of je de tekst nu wilt afdrukken of voor later wilt bewaren.
Logregels en labels opbouwen
String.format is handig voor logregels, UI-labels en bestandsnamen waarvoor je een precies patroon nodig hebt.
Als je de opmaak centraliseert, zorgt één wijziging ervoor dat elk bericht wordt bijgewerkt.
public class Main {
public static void main(String[] args) {
int code = 404;
String log = String.format("[ERROR %d] not found", code);
System.out.println(log);
}
}Dezelfde type regels gelden
De regels voor specificatie en waarde zijn identiek: %d heeft een geheel getal nodig, %f een zwevendekommagetal en een niet-overeenkomend type veroorzaakt tijdens runtime een uitzondering.
Controleer de koppelingen nogmaals voordat je het programma uitvoert.
Korte test
Waarin verschilt String.format van printf?
Samenvatting
String.format gebruikt dezelfde regels als printf, maar geeft een String terug die je kunt opslaan, teruggeven of opnieuw gebruiken.
Vervolgens combineer je breedtes en uitlijning om nette tabellen op te bouwen.
Leer Java met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 104
- Lessen
- 374
Veelgestelde vragen
Is de les “String.format” gratis?
Ja — de volledige tekst van “String.format” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Java Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Java Academy bevat in totaal 4 lessen.
Wat leer ik in “String.format”?
Bouw geformatteerde tekenreeksen. Je oefent met Java Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Java Academy te beginnen?
Ervaring vooraf is niet nodig. Java Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 3 van 4.
Hoe lang duurt de les “String.format”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Java Academy?
Ja. Elke les over Java Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.