Java检查StringBuilder是否包含字符串的几种方法
在Java中,检查StringBuilder是否包含字符串(即非空)的最直接方法是检查其长度(length())。以下是详细的判断方法:
1. 判断StringBuilder是否为空(无内容)
StringBuilder sb = new StringBuilder();
// 方法1:使用length()判断
if (sb.length() == 0) {
System.out.println("StringBuilder为空");
}
// 方法2:Java 11+ 使用isEmpty()
if (sb.isEmpty()) { // Java 11及以上版本可用
System.out.println("StringBuilder为空");
}2. 判断StringBuilder是否非空(有内容)
StringBuilder sb = new StringBuilder("Hello");
if (sb.length() > 0) {
System.out.println("StringBuilder包含字符串: " + sb);
}
// 或者更直观的判断
if (!sb.isEmpty()) { // Java 11+
System.out.println("StringBuilder非空");
}3. 判断是否包含特定字符串
StringBuilder sb = new StringBuilder("Hello World");
// 方法1:转换为String后判断(消耗资源)
if (sb.toString().contains("World")) {
System.out.println("包含'World'");
}
// 方法2:使用indexOf()高效判断(推荐)
if (sb.indexOf("World") != -1) {
System.out.println("包含'World'");
}4. 完整示例代码
public class StringBuilderCheck {
public static void main(String[] args) {
// 空StringBuilder判断
StringBuilder sb1 = new StringBuilder();
checkEmpty(sb1); // 输出: StringBuilder为空
// 非空StringBuilder判断
StringBuilder sb2 = new StringBuilder("Hello");
checkEmpty(sb2); // 输出: StringBuilder有内容: Hello
// 内容检查
checkContent(sb2, "Hi"); // 输出: 不包含'Hi'
checkContent(sb2, "ell"); // 输出: 包含'ell'
}
static void checkEmpty(StringBuilder sb) {
if (sb.length() == 0) {
System.out.println("StringBuilder为空");
} else {
System.out.println("StringBuilder有内容: " + sb);
}
}
static void checkContent(StringBuilder sb, String search) {
if (sb.indexOf(search) != -1) {
System.out.println("包含'" + search + "'");
} else {
System.out.println("不包含'" + search + "'");
}
}
}性能建议
避免不必要的toString()转换
// 错误做法(创建临时字符串)
if (sb.toString().isEmpty()) { ... }
// 正确做法(直接检查长度)
if (sb.length() == 0) { ... }**优先使用indexOf()替代toString().contains()**
当需要检查内容时,indexOf()直接在内部数组中搜索,比创建临时字符串更高效。
版本说明
length() == 0:所有Java版本适用
isEmpty():仅限Java 11及更高版本
indexOf():所有Java版本适用且高效
到此这篇关于Java检查StringBuilder是否包含字符串的几种方法的文章就介绍到这了,更多相关StringBuilder是否包含字符串内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Spring Boot与Kotlin定时任务的示例(Scheduling Tasks)
这篇文章主要介绍了Spring Boot与Kotlin定时任务的示例(Scheduling Tasks),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-03-03
Springboot如何获取配置文件application.yml中自定义的变量并使用
这篇文章主要介绍了Springboot中获取配置文件(application.yml)中自定义的变量并使用,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2021-09-09


最新评论