Avatar ·

如何在 Java 中处理字符串?

大家好!我开始学习 Java,遇到了对字符串处理的不理解。我好像读到过 String 是一个 immutable(不可变)对象,但在实践中出现了问题。

问题:有一个字符串列表,需要用逗号连接,但有些值可能是 null。我尝试在循环中处理,但要么得到 NullPointerException,要么末尾多了一个逗号。

以下是我尝试过的(简化代码):

List<String> items = Arrays.asList("apple", null, "banana", "cherry");
String result = "";
for (String item : items) {
    if (item != null) {
        result += item + ",";
    }
}
// 得到 "apple,banana,cherry," — 末尾多了一个逗号
System.out.println(result);

另外,我听说过 StringBuilder,但不知道什么时候应该用它而不是普通的 '+' 连接。在一些例子中看到,对于简单的拼接,