String str = "hello"; str = str + " world"; // 这里并不是修改原对象
// 最常见的几种创建方式 String str1 = "直接赋值"; String str2 = new String("使用构造器"); String str3 = new String(charArray); // 字符数组转换 String str4 = String.valueOf(123); // 其他类型转字符串
String str = getPossibleNullString(); int length = str.length(); // 潜在的空指针异常
// 编译器优化后的效果 String message = "Hello " + name + ", welcome to " + city; // 等价于:new StringBuilder().append("Hello ").append(name)...
public class ProductTitleCleaner {
public static String cleanTitle(String rawTitle) {
if (rawTitle == null || rawTitle.trim().isEmpty()) {
return "未知商品";
}
// 去除多余空格,保留单词间单个空格
String cleaned = rawTitle.trim().replaceAll("\\s+", " ");
// 首字母大写
cleaned = capitalizeWords(cleaned);
// 移除特殊字符但保留中文和基本标点
cleaned = cleaned.replaceAll("[^\\u4e00-\\u9fa5a-zA-Z0-9\\s.,!?]", "");
return cleaned;
}
private static String capitalizeWords(String str) {
String[] words = str.split("\\s");
StringBuilder result = new StringBuilder();
for (String word : words) {
if (!word.isEmpty()) {
result.append(Character.toUpperCase(word.charAt(0)))
.append(word.substring(1).toLowerCase())
.append(" ");
}
}
return result.toString().trim();
}
}
你可能想看: