Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara StringBuilder | Stringa
Basi di Java
Sezione 5. Capitolo 6
single

single

bookStringBuilder

Scorri per mostrare il menu

Cos'è StringBuilder?

StringBuilder è una classe di utilità per la manipolazione e la modifica di oggetti stringa.

StringBuilder offre metodi propri e la creazione di un oggetto StringBuilder è semplice e intuitiva.

Main.java

Main.java

copy
1
StringBuilder builder = new StringBuilder();

All'interno delle parentesi, è possibile passare anche un valore stringa, e la nostra variabile StringBuilder conterrà tale valore:

Main.java

Main.java

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

Per stampare il nostro valore sulla console, è necessario utilizzare uno dei metodi di StringBuilder. Si tratta del metodo toString(), che converte il valore dello StringBuilder in un valore di tipo String. Vediamo un esempio:

Main.java

Main.java

copy
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); } }

StringBuilder in azione

StringBuilder offre un ricco insieme di metodi, tra cui uno dei più utili e frequentemente utilizzati è append(String str). Questo metodo consente di aggiungere una stringa specificata al contenuto esistente di un oggetto StringBuilder.

Analisi di un esempio di codice:

Main.java

Main.java

copy
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); } }

Perché non usare l'operatore +?

Si preferisce il metodo append di StringBuilder perché evita la creazione di molteplici oggetti temporanei, migliorando le prestazioni quando si modifica ripetutamente il contenuto. Utilizzare l'operatore + crea un nuovo oggetto ogni volta, risultando costoso in termini di memoria e tempo. StringBuilder modifica direttamente il contenuto, rendendolo più efficiente per modifiche ripetute.

Compito

Scorri per iniziare a programmare

Stai creando una visualizzazione dei prodotti per una pagina web. Ogni prodotto ha un nome e un prezzo, e sono memorizzati in un array 2D.
Devi formattare l'intera lista in una stringa ben strutturata utilizzando un StringBuilder.

  1. Creare un metodo chiamato buildProductList(String[][] products) che restituisce una String formattata.
  2. Inizializzare un StringBuilder e aggiungere l'intestazione:
    "Product List:\n"
  3. Scorrere l'array products utilizzando un ciclo for-each.
  4. Per ogni prodotto:
    • Estrarre il nome (product[0])
    • Estrarre il prezzo (product[1])
    • Aggiungere una riga al StringBuilder nel formato:
      ProductName - $Price\n
  5. Restituire la String completa dal StringBuilder.

Soluzione

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 5. Capitolo 6
single

single

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

some-alt