
【Java SE】String.split() 方法对空字符的处理
发布日期:2021-05-07 02:47:46
浏览次数:22
分类:精选文章
本文共 652 字,大约阅读时间需要 2 分钟。
string.split()方法对空字符的处理
String strtest = "1,2,";String arry[] = strtest.split(",");
这样得到的数组元素个数只是2两个,为什么呢,最后一个","后没有内容,它没有作为空字符串成为第三个数组元素,结尾的空字符串被丢弃了!
这个函数还有另一种重载方式 :public String [] split (String regex, int limit)
看下说明:
- 如果该限制
n > 0
,则模式将被最多应用 n - 1 次,数组的长度将不会大于 n ,而且数组的最后一项将包含所有超出最后匹配的定界符的输入。 - 如果
n 为非正
,那么模式将被应用尽可能多的次数,而且数组可以是任何长度。 - 如果
n = 0
,那么模式将被应用尽可能多的次数,数组可以是任何长度,并且结尾空字符串将被丢弃。
而对于函数 public String [] split (String regex),该方法的作用就是使用给定的表达式和限制参数 0 来调用两参数 split方法。因此,所得数组中不包括结尾空字符串.
所以如果不想让结尾的空字符串被丢弃,那么应该这样写:
String strtest = "1,2,";String arry[] = strtest.split(",", -1);

其实通过上面两张图可以看出,当参数limit远超实际分割次数时,效果和参数limit<0等同。
发表评论
最新留言
网站不错 人气很旺了 加油
[***.192.178.218]2025年04月07日 18时25分39秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
SQL联表的方式(逗号, Left Join, Right Join)
2019-03-06
牛客网输入输出举例
2019-03-06
字符串初始化时的注意点
2019-03-06
软考相关试题
2019-03-06
顺序表的操作
2019-03-06
常量表达式
2019-03-06
POD类型
2019-03-06
const与常量,傻傻分不清楚~
2019-03-06
Head First设计模式——迭代器模式
2019-03-06
MongoDB版本及存储引擎区别
2019-03-06
shell echo单行和多行文字定向写入到文件中
2019-03-06
AtCoder Beginner Contest 100 题解
2019-03-06
【数据结构】可持久化线段树初步
2019-03-06
Java高性能编程之CAS与ABA及解决方法
2019-03-06
从BIO到Netty的演变
2019-03-06
《算法导论》第二章笔记
2019-03-06
HTML节点操作
2019-03-06
HTML5新特性
2019-03-06
cmp命令
2019-03-06
一次编辑
2019-03-06