字符串split的几种情况

split用法总是在判断字符串类型时考虑的很模糊,今天特别记忆与记录一下

1.带逗号的情况,略过,正常使用即可

2.不带逗号的字符串,数组的数量为一个,值为该字符串

3.空字符串情况,数组的数量为一个,值空字符串

4.null的情况,不能成功转换

 

 

### Java `String.split()` 方法详解 #### 基本概念 `String.split()` 是 Java 中的一个重要方法,属于 `String` 类。它通过指定的分隔符将字符串拆分为多个部分,并返回一个由这些部分组成的字符串数组。 此方法有两组重载形式: 1. **public String[] split(String regex)** 此方法按照给定的正则表达式 `regex` 将字符串分割为若干子串[^2]。 2. **public String[] split(String regex, int limit)** 这种方式除了按正则表达式分割外,还允许设置结果数组的最大长度为 `limit` 参数所指定的值[^3]。 --- #### 示例代码展示 以下是几个典型的使用场景: ##### 场景一:简单分割 当只需要依据简单的字符(如逗号 `,` 或空格)来分割字符串时,可以这样实现: ```java // 输入字符串 String str = "apple,banana,cherry"; // 调用 split 方法并传入分隔符 "," String[] result = str.split(","); // 输出结果 for (int i = 0; i < result.length; i++) { System.out.println(result[i]); } ``` 上述代码会输出三个独立的部分:“apple”,“banana” 和 “cherry”。这是基于单一分隔符的情况[^1]。 ##### 场景二:带限制条件的分割 (`limit`) 如果希望控制最终得到的结果数量,则可以通过第二个参数 `limit` 来调整行为: ```java // 输入字符串 String str = "one,two,three,four"; // 设置 limit=2 表示最多保留两个元素 String[] limitedResult = str.split(",", 2); // 打印结果 System.out.println(Arrays.toString(limitedResult)); ``` 运行以上程序后可以看到如下输出: ``` [one, two,three,four] ``` 这里因为设置了 `limit=2`,所以只产生了前两项,“two,three,four”作为一个整体被保留在最后一个位置上。 ##### 场景三:处理空白字符 有时输入数据可能含有额外的空间或其他不可见字符,在这种情况下可利用正则表达式的特性去除它们: ```java // 含有多余空格的数据源 String messyStr = " apple , banana , cherry "; // 使用 \\s* 匹配任意数目的空白字符 String[] cleanResults = messyStr.trim().split("\\s*,\\s*"); // 展现清理后的成果 System.out.println(Arrays.toString(cleanResults)); ``` 这段脚本先调用了 `.trim()` 函数去掉首尾多余的空格,再配合正则表达式 `\s*,\s*` 实现更精确地分离各个字段。 --- ### 总结 综上所述,`String.split()` 提供了一种灵活高效的方式来操作字符串对象。无论是基础应用还是复杂需求都可以借助这一工具完成相应的任务。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值