Grunnleggende om printf
Formater strenger og argumenter.
Grunnleggende om printf er en gratis leksjon i Java Academy på CoddyKit. Dette er leksjon 1 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Java Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Java Academy inneholder totalt 4 leksjoner.
Hvorfor printf?
Noen ganger er System.out.println ikke nok. Det kan være ønskelig å stille opp tall, forkorte desimaltall eller sette inn verdier i en setning.
System.out.printf lar deg bygge en formatert streng ved hjelp av plassholdere. Det er en forkortelse for «print formatted».
Din første printf
Et printf-kall tar en formatstreng samt verdier. Hver plassholder begynner med %.
Her betyr %s «sett inn en streng her». Verdien etter kommaet fyller denne plassen.
public class Main {
public static void main(String[] args) {
System.out.printf("Hello, %s!\n", "World");
}
}printf legger ikke til linjeskift
I motsetning til println legger printf ikke automatisk til et linjeskift. Hvis markøren skal flyttes til neste linje, må du selv legge til \n.
Hvis dette glemmes, skrives to utskrifter rett etter hverandre på samme linje.
public class Main {
public static void main(String[] args) {
System.out.printf("A");
System.out.printf("B\n");
}
}Spesifikatoren %s
%s er plassholderen for strenger. Den fungerer for tekst og også for de fleste objekter, som Java automatisk konverterer til tekst.
Du kan bruke flere %s-plasser i ett kall. Verdiene kobles til fra venstre mot høyre.
public class Main {
public static void main(String[] args) {
System.out.printf("%s likes %s\n", "Ana", "Java");
}
}Spesifikatoren %d
%d formaterer et heltall (en int eller long). d står for «desimalt heltall».
Hvis du sender en desimalverdi som 3.5 til %d, oppstår det en feil. Bruk derfor %d bare for heltall.
public class Main {
public static void main(String[] args) {
int age = 25;
System.out.printf("Age: %d\n", age);
}
}Flere plassholdere
Du kan fritt blande spesifikatorer. Hver plassholder bruker det neste argumentet i rekkefølgen.
Nedenfor tar %s navnet, mens %d tar poengsummen.
public class Main {
public static void main(String[] args) {
System.out.printf("%s scored %d points\n", "Leo", 42);
}
}Rekkefølgen er viktig
Argumentene fyller plassholderne i nøyaktig den rekkefølgen de forekommer i. Den første verdien går til den første %, den andre verdien til den andre, og så videre.
Hvis verdiene byttes om, endres betydningen av utskriften.
public class Main {
public static void main(String[] args) {
System.out.printf("%d before %d\n", 1, 2);
}
}Unnslippingen %%
Siden % starter en plassholder, hvordan skriver du ut et bokstavelig prosenttegn? Bruk %%.
Én %% i formatstrengen blir til ett enkelt % i utskriften.
public class Main {
public static void main(String[] args) {
System.out.printf("%d%% done\n", 80);
}
}Vanlige escape-sekvenser
I formatstrengen kan du bruke de vanlige escape-sekvensene: \n for et linjeskift og \t for en tabulator.
Dette gjør det enklere å skille verdier eller flytte til nye linjer på en ryddig måte.
public class Main {
public static void main(String[] args) {
System.out.printf("Name:\tBob\nCity:\tRome\n");
}
}printf og println
println er utmerket for rask utskrift av én verdi. printf er best når du vil kontrollere nøyaktig hvordan verdiene ser ut.
Tommelfingerregel: velg printf når du trenger plassholdere, justering eller kontroll over desimaler.
Typer som ikke samsvarer
Spesifikatoren må passe med verditypen. Hvis %d brukes med tekst, eller %s brukes der du forventet et tallformat, kan det oppstå feil eller merkelig utskrift.
Koble alltid %s med tekst og %d med heltall.
Kort kontroll
Test det grunnleggende om printf.
Oppsummering
Du har lært om System.out.printf, plassholderne %s og %d, unnslippingen %% og at printf ikke legger til linjeskift på egen hånd.
Deretter skal du formatere tall og desimaler med presisjon.
Lær deg Java med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 104
- Leksjoner
- 374
Ofte stilte spørsmål
Er leksjonen «Grunnleggende om printf» gratis?
Ja – hele teksten i «Grunnleggende om printf» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Java Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Java Academy inneholder totalt 4 leksjoner.
Hva lærer jeg i «Grunnleggende om printf»?
Formater strenger og argumenter. Du øver på Java Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Java Academy?
Ingen tidligere erfaring er nødvendig. Java Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 4.
Hvor lang tid tar leksjonen «Grunnleggende om printf»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Java Academy-leksjonen?
Ja. Alle Java Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Grunnleggende om printf
- Tall- og desimalformater
- String.format
- Justere tabeller