single
StringBuilder
Scorri per mostrare il menu
Cos'è StringBuilder?
StringBuilder è una classe di utilità per la manipolazione e la modifica di oggetti stringa.
Ulteriori informazioni sulle classi, su come crearle e su come utilizzarle correttamente saranno trattate in un corso separato.
StringBuilder offre i propri metodi e creare un oggetto StringBuilder è semplice e intuitivo.
Main.java
1StringBuilder builder = new StringBuilder();
All'interno delle parentesi, è possibile anche passare un valore stringa, e la nostra variabile StringBuilder conterrà tale valore:
Main.java
1StringBuilder 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 di StringBuilder in un valore di tipo String.
Vediamo un esempio:
Main.java
123456789package 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); } }
Ricorda che se il tuo StringBuilder ha un valore null, verrà generata una NullPointerException (NPE).
StringBuilder in azione
StringBuilder offre un ricco insieme di metodi, tra cui uno dei più preziosi e frequentemente utilizzati è append(String str). Questo metodo consente di aggiungere una stringa specificata al contenuto esistente di un oggetto StringBuilder.
Esaminiamo un esempio di codice:
Main.java
12345678910111213141516package 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, il che è oneroso in termini di memoria e tempo. StringBuilder modifica direttamente il contenuto, risultando più efficiente per cambiamenti ripetuti.
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.
- Creare un metodo chiamato
buildProductList(String[][] products)che restituisce unaStringformattata. - Inizializzare un
StringBuildere aggiungere l'intestazione:
"Product List:\n" - Scorrere l'array
productsutilizzando un ciclo for-each. - Per ogni prodotto:
- Estrarre il nome (
product[0]) - Estrarre il prezzo (
product[1]) - Aggiungere una riga al
StringBuildernel formato:
ProductName - $Price\n
- Estrarre il nome (
- Restituire la
Stringcompleta dalStringBuilder.
Soluzione
Grazie per i tuoi commenti!
single
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione