Avatar ·

Comment travailler avec les chaînes de caractères en Java ?

Bonjour à tous ! J'ai commencé à étudier Java et j'ai rencontré des difficultés à comprendre le travail avec les chaînes de caractères. J'ai lu que String est un objet immutable (immuable), mais en pratique, des questions se posent.

Problème : J'ai une liste de chaînes que je dois concaténer avec des virgules, mais certaines valeurs peuvent être null. J'essaie de le faire dans une boucle, mais j'obtiens soit une NullPointerException, soit une virgule supplémentaire à la fin.

Voici ce que j'ai essayé (code simplifié) :

List<String> items = Arrays.asList("apple", null, "banana", "cherry");
String result = "";
for (String item : items) {
    if (item != null) {
        result += item + ",";
    }
}
// J'obtiens "apple,banana,cherry," — une virgule supplémentaire à la fin
System.out.println(result);

J'ai aussi entendu parler de StringBuilder, mais je ne comprends pas quand l'utiliser à la place de la concaténation simple avec '+'. Dans certains exemples, j'ai vu que pour une simple addition...