single
StringBuilder
Glissez pour afficher le menu
Qu'est-ce que StringBuilder ?
StringBuilder est une classe utilitaire pour manipuler et modifier des objets de type chaîne de caractères.
Vous en apprendrez davantage sur les classes, comment les créer et comment les utiliser correctement dans un cours séparé.
StringBuilder propose ses propres méthodes, et la création d'un objet StringBuilder est simple et intuitive.
Main.java
1StringBuilder builder = new StringBuilder();
À l'intérieur des parenthèses, il est également possible de passer une valeur de chaîne de caractères, et notre variable StringBuilder contiendra cette valeur :
Main.java
1StringBuilder builder = new StringBuilder("c<>definity");
Pour afficher notre valeur dans la console, il est nécessaire d'utiliser l'une des méthodes de StringBuilder. Il s'agit de la méthode toString(), qui convertit la valeur du StringBuilder en une valeur de type String.
Examinons un exemple :
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); } }
Gardez à l'esprit que si votre StringBuilder a une valeur nulle, cela entraînera le lancement d'une NullPointerException (NPE).
StringBuilder en action
StringBuilder offre un ensemble riche de méthodes, l'une des plus précieuses et fréquemment utilisées étant append(String str). Cette méthode permet d'ajouter une chaîne spécifiée au contenu existant d'un objet StringBuilder.
Examinons un exemple de code :
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); } }
Pourquoi ne pas utiliser l'opérateur + ?
Nous privilégions la méthode append de StringBuilder car elle évite la création de multiples objets temporaires, ce qui améliore les performances lors de modifications répétées du contenu. L'utilisation de l'opérateur + crée un nouvel objet à chaque fois, ce qui est coûteux en mémoire et en temps. StringBuilder modifie le contenu directement, le rendant plus efficace pour des changements répétés.
Glissez pour commencer à coder
Vous développez un affichage de produits pour une page web. Chaque produit possède un nom et un prix, stockés dans un tableau 2D.
Vous devez formater la liste complète dans une chaîne de caractères bien structurée à l'aide d'un StringBuilder.
- Créer une méthode nommée
buildProductList(String[][] products)qui retourne uneStringformatée. - Initialiser un
StringBuilderet ajouter l'en-tête :
"Product List:\n" - Parcourir le tableau
productsà l'aide d'une boucle for-each. - Pour chaque produit :
- Extraire le nom (
product[0]) - Extraire le prix (
product[1]) - Ajouter une ligne au
StringBuilderau format :
ProductName - $Price\n
- Extraire le nom (
- Retourner la
Stringcomplète à partir duStringBuilder.
Solution
Merci pour vos commentaires !
single
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion