☰
Java split()分隔符陷阱揭秘
2026/11/5 3:47:07 网站建设 项目流程

在java.lang这个包里面, 也存在着叫做.split()的这种办法, 它和.net里面的那种东西是非常类似的, 它们两个都是会返回出来一个字符型的数组这样的东西, 可是在大家使用的过程之中, 其实还有一些很小的一些技巧是需要注意到的。

如果执行代码"2|33|4".split("|), 得到的结果是""2|33|4。这看起来很奇怪, 不过只要你仔细看一下API的说明, 就能知道其中的原因了。

java.lang..split split 这个方法的作用是将一个字符串进行分割, 变成多个子字符串, 然后它会把产生的结果作为一个字符串数组来返回。

在java.lang包里面, 其实也有一个叫作拆分的那个方法, 这个跟.net里的差不多, 都是一起返回一个字符类型的数组这个东西, 可是如果在实际使用它的时候, 还会存在一些小窍门需要人们去掌握。

如执行:"2|33|4".split("|")

出来的结果是:

""

虽然这一点让人感觉有些意外, 但你只要去仔细查看一下关于API的技术说明文件的话, 就可以清楚地明白造成这种现象的具体原由了。

java.lang..split

split 方法

你要把那个长字符串给切碎, 弄成一段一段的小子字符串, 之后把这些小子字符串全都放到一个字符串数组里面去返回。

.split()

参数

这是一个必选的选项, 指的是那个需要被分解出来的对象, 或者是说那些需要被文字化的内容。必须要注意清楚, 这个对象本身是绝对不会因为调用了 split 方法而去发生任何改变的, 它不会被修改掉。

这个是可选项, 类型可以是字符串或者是正则表达式对象。它标识了在分隔字符串的时候, 是使用一个字符还是多个字符来作为分界。如果你忽略了这一个选项的话, 返回的结果将是一个包含了整个字符串作为一个单一元素的数组。

limit

这是可选项,这个值是用来限制返回数组中的元素个数的。

说明

这个split方法在执行操作之后, 其产生的结果就是一个字符串类型的数组, 并且是在当前的这个对象里面, 那个字符所每一次出现的那个确切的定位点上, 都去把这个整体给拆开来进行分解。

所以, 那个正确的、合乎规范的书写或者表达方法, 就是这样子的。

1、假如大家是采用点号当作分隔标识的话, 那就必须使用下面这样的写法, 也就是用双反斜杠加上引号把这个点括起来, 这样才能实现正确的分拆操作, 是绝对不能写成直接用单引号括住点号的样子的。

2、要是你打算使用“|”这个字符作为切分的符号的话, 那必须得用那种叫作 `.split("\\|")` 的写法去实现, 只有这样子, 系统才能正确地识别并进行分隔操作, 绝对不能用那种写成 `.split("|");` 的方式去做。

句子里的“.”还有“|”都被认为是具备特殊含义的代码符号, 因此必须给它们加上“\\"这一类的前缀来进行处理。

3、如果一个字符串里面包含了好几个不同的分隔符, 那么使用者可以选择使用竖线符号来作为那个连接性的字符, 具体的样子就像是用双引号括起来的“a=1 and b =2 or c=3”这串字符一样, 为了能够把这三种不一样的情况都给分隔提取出来, 代码部分可以写成一个点加方括号的形式, 也就是调用.split这个方法, 并且把"and|or"当作参数传进去。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询