1. String类方法概述
在Java编程中,String类是最基础也是最常用的类之一。作为不可变字符序列,String提供了丰富的方法来操作字符串。理解这些方法对于日常开发至关重要,它们能帮助我们高效处理文本数据、验证输入、转换格式等各种场景。
String类的方法可以分为几个主要类别:字符串比较、搜索与定位、子串操作、大小写转换、空白处理等。每个方法都有其特定的使用场景和注意事项,正确使用这些方法可以避免很多常见的编程错误。
注意:String对象是不可变的,任何看似"修改"字符串的操作实际上都会创建新的String对象。这在内存敏感的应用中需要特别注意。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 字符串比较方法
2.1 equals()方法
equals()方法是String类中最常用的比较方法,用于比较两个字符串的内容是否相同。它与"=="操作符有本质区别:
java复制String str1 = "hello";
String str2 = new String("hello");
System.out.println(str1 == str2); // false,比较的是对象引用
System.out.println(str1.equals(str2)); // true,比较的是内容
实际开发中,我们经常需要处理用户输入或外部数据,这时equals()就派上用场了:
java复制// 用户登录验证示例
String inputPassword = getUserInput();
String storedPassword = getFromDatabase();
if(storedPassword.equals(inputPassword)) {
// 登录成功
}
重要提示:为了避免NullPointerException,建议将已知的非null字符串放在equals()前面:
"constant".equals(variable)
2.2 compareTo()方法
compareTo()方法按字典顺序比较两个字符串,返回值为:
- 0:两字符串相等
- 负数:当前字符串在参数字符串之前
- 正数:当前字符串在参数字符串之后
java复制String a = "apple";
String b = "banana";
System.out.println(a.compareTo(b)); // 输出负数,因为"apple"在"banana"之前
这个方法在排序场景中特别有用:
java复制List<String> fruits = Arrays.asList("banana", "apple", "orange");
fruits.sort(String::compareTo);
// 结果为["apple", "banana", "orange"]
3. 字符串搜索与检查
3.1 contains()方法
contains()方法检查字符串是否包含指定的字符序列:
java复制String email = "user@example.com";
if(email.contains("@")) {
System.out.println("这是一个有效的邮箱格式");
}
这个方法常用于输入验证和内容过滤:
java复制// 检查用户评论是否包含敏感词
String[] sensitiveWords = {"暴力", "色情", "诈骗
