Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære StringBuilder | String
Java Grunnleggende
Seksjon 5. Kapittel 6
single

single

StringBuilder

Sveip for å vise menyen

Hva er StringBuilder?

StringBuilder er en hjelpeklasse for å manipulere og redigere strengobjekter.

Note
Merk

Du vil lære mer om klasser, hvordan du oppretter dem, og hvordan du arbeider korrekt med dem i et eget kurs.

StringBuilder har egne metoder, og det er enkelt og intuitivt å opprette et StringBuilder-objekt.

Main.java

Main.java

1
StringBuilder builder = new StringBuilder();

Inne i parentesene kan vi også sende inn en strengverdi, og vår StringBuilder-variabel vil inneholde denne verdien:

Main.java

Main.java

1
StringBuilder builder = new StringBuilder("c<>definity");

For å skrive ut verdien til konsollen, må vi bruke en av metodene til StringBuilder. Det er toString()-metoden, som konverterer verdien av StringBuilder til en verdi av typen String. La oss se på et eksempel:

Main.java

Main.java

123456789
package com.example; public class Main { public static void main(String[] args) { StringBuilder builder = new StringBuilder("c<>definity"); String string = builder.toString(); System.out.println(string); } }
Note
Merk

Vær oppmerksom på at hvis din StringBuilder har en null-verdi, vil det føre til at en NullPointerException (NPE) kastes.

StringBuilder i praksis

StringBuilder tilbyr et omfattende sett med metoder, hvor en av de mest verdifulle og ofte brukte er append(String str). Denne metoden gjør det mulig å legge til en angitt streng til det eksisterende innholdet i et StringBuilder-objekt.

La oss se på et kodeeksempel:

Main.java

Main.java

12345678910111213141516
package com.example; public class Main { public static void main(String[] args) { // Initializing the new `String` with value "Hello" String hello = "Hello"; System.out.println("Our string before using an append() method: " + hello); // Initializing a new `StringBuilder` with value of our already initialized string StringBuilder builder = new StringBuilder(hello); // Using `append()` method, adding a string world to our `StringBuilder` builder = builder.append(" world!"); // Creating a new `String` variable that has a `StringBuilder` value String result = builder.toString(); System.out.println("Our string after using an append() method: " + result); } }

Hvorfor ikke bruke +-operatoren?

Vi foretrekker StringBuilder sin append-metode fordi den unngår å opprette flere midlertidige objekter, noe som gir bedre ytelse ved gjentatte endringer av innholdet. Bruk av +-operatoren oppretter et nytt objekt hver gang, noe som er kostbart i minne og tid. StringBuilder endrer innholdet direkte, og er derfor mer effektiv ved gjentatte endringer.

Oppgave

Sveip for å begynne å kode

Du skal lage en produktvisning for en nettside. Hvert produkt har et navn og en pris, og de lagres i et 2D-array.
Du må formatere hele listen til en pent strukturert streng ved å bruke en StringBuilder.

  1. Lag en metode kalt buildProductList(String[][] products) som returnerer en formatert String.
  2. Initialiser en StringBuilder og legg til overskriften:
    "Product List:\n"
  3. Gå gjennom products-arrayet med en for-each-løkke.
  4. For hvert produkt:
    • Hent ut navnet (product[0])
    • Hent ut prisen (product[1])
    • Legg til en linje i StringBuilder i formatet:
      ProductName - $Price\n
  5. Returner hele String fra StringBuilder.

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 5. Kapittel 6
single

single

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

some-alt