行业资讯 2025年08月6日
0 收藏 0 点赞 929 浏览 1875 个字
摘要 :

文章目录 1. 使用纯Java 2. 使用分离器 3.使用StringUtils.split() 本文将学习将字符串分割为数组。拆分字符串是一项非常常见的任务,尤其是在 Web 应用程序中,当我们……




  • 1. 使用纯Java
  • 2. 使用分离器
  • 3.使用StringUtils.split()

本文将学习将字符串分割为数组。拆分字符串是一项非常常见的任务,尤其是在 Web 应用程序中,当我们必须以 CSV 格式传递数据或基于其他分隔符(例如 或另一个分隔符)进行分隔$#

1. 使用纯Java

String.split()方法是分割字符串的最佳且推荐的方法。令牌以字符串数组的形式返回,这样我们就可以按照自己的意愿使用它。

以下 Java 程序使用分隔符逗号分割字符串。相当于分割一个CSV文件。

// 使用 split() 示例
String blogName = \"how,to,do,in,java\";
String[] tokenArray = blogName.split(\",\");    //[\"how\", \"to\", \"do\", \"in\", \"java\"]

我们需要修改正则表达式以满足任何其他要求。为了忽略逗号周围的空格,我们可以使用模式“\\\\s,\\\\s”。

String[] tokenArray = blogName.split(\"\\\\s*,\\\\s*\");

2. 使用分离器

String.split ()是非常简单的 API,适用于简单的用法。如果我们想在分割后但得出最终结果之前处理令牌,那么Splitte类是最好的。

  • 使用Splitter还可以使代码更具可读性和可重用性。我们创建一个Splitter实例并多次复用它,从而有助于实现整个应用程序的统一逻辑拆分。
  • 另一个好处是,它在构建分离器本身时还提供了一些有用的方法,消除了创建代币后的大量后续工作。

我们可以直接从maven存储库中包含Guava 。

<dependency>
    <groupId>com.google.guava</groupId>
    <artifactId>guava</artifactId>
    <version>17.0</version>
</dependency>

我们可以以流畅的方式创建一个Splitter实例:

Splitter niceCommaSplitter = Splitter.on(\',\').omitEmptyStrings().trimResults();

现在,可以根据需要在代码中的任何位置使用它。请注意,我们有两次逗号。Splitter 处理得很好并且不包含空令牌。

//Splitter 示例
Splitter niceCommaSplitter = Splitter.on(\',\').omitEmptyStrings().trimResults();

Iterable<String> tokensList = niceCommaSplitter.split(\"how,to,do,in, ,java\");   

tokensList.forEach(System.out::println); //\"how\", \"to\", \"do\", \"in\", \"java\"

3.使用StringUtils.split()

Apache Commons Lang 的StringUtils类提供了许多有用的方法来对字符串执行常见操作,例如搜索、替换、反转或检查为空。所有操作都是null 安全的。

StringUtils .split()与上述方法非常相似,也返回String数组输出。唯一的好处是代码速度更快。

首先包含最新版本的common-lang3依赖项。

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
    <version>3.12.0</version>
</dependency>

初始化StringUtils的构造函数采用以下参数:

//句法
split(String str, String separatorChars, int max)
  • str – 要解析的字符串,可能为空。
  • separatorChars(可选)– 用作分隔符的字符。默认值为空格。
  • max (可选)– 数组中包含的最大元素数。零或负值意味着没有限制。

以下使用StringUtils 的Java 程序通过分隔符空格分割字符串。

//StringUtils 示例
String[] tokens = StringUtils.split(\"how to do in java\");

Assertions.assertArrayEquals(new String[]{\"how\", \"to\", \"do\", \"in\", \"java\"}, tokens);

微信扫一扫

支付宝扫一扫

版权: 转载请注明出处:https://www.zuozi.net/9220.html

管理员

相关推荐
2025-08-06

文章目录 一、Reader 接口概述 1.1 什么是 Reader 接口? 1.2 Reader 与 InputStream 的区别 1.3 …

988
2025-08-06

文章目录 一、事件溯源 (一)核心概念 (二)Kafka与Golang的优势 (三)完整代码实现 二、命令…

465
2025-08-06

文章目录 一、证明GC期间执行native函数的线程仍在运行 二、native线程操作Java对象的影响及处理方…

348
2025-08-06

文章目录 一、事务基础概念 二、MyBatis事务管理机制 (一)JDBC原生事务管理(JdbcTransaction)…

456
2025-08-06

文章目录 一、SnowFlake算法核心原理 二、SnowFlake算法工作流程详解 三、SnowFlake算法的Java代码…

517
2025-08-06

文章目录 一、本地Jar包的加载操作 二、本地Class的加载方法 三、远程Jar包的加载方式 你知道Groo…

832
发表评论
暂无评论

还没有评论呢,快来抢沙发~

助力内容变现

将您的收入提升到一个新的水平

点击联系客服

在线时间:08:00-23:00

客服QQ

122325244

客服电话

400-888-8888

客服邮箱

122325244@qq.com

扫描二维码

关注微信客服号