问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

stringutils.split和string.split的区别

发布网友 发布时间:2022-08-24 18:38

我来回答

3个回答

热心网友 时间:2024-11-28 23:12

首先我们看StringUtils的split()方法的底层:
public static String[] split(String toSplit, String delimiter) {
if (!hasLength(toSplit) || !hasLength(delimiter)) {
return null;
}
int offset = toSplit.indexOf(delimiter);
if (offset < 0) {
return null;
}
String beforeDelimiter = toSplit.substring(0, offset);
String afterDelimiter = toSplit.substring(offset + delimiter.length());
return new String[] {beforeDelimiter, afterDelimiter};
}
语义上看不难理解,第一个参数是需要分割的字符串,第二个参数即分隔符。
逻辑上走下来,可以发现,这个方法是使用subString()方法,从字符串起始位置到分隔符在字符串中第一次出现的位置截下来,然后在把剩下的的字符串截下来,放进数组返回。
可以看出StringUtils的split()方法是使用subString去截断字符串,并且只截一次
而String的split从使用效果来说就知道,分隔符有多少,就截多少,当然我并没有去看源代码,仅从使用效果来说是这样。
语言功底不好,描述略多,见谅!

热心网友 时间:2024-11-28 23:12

StringUtils.split其实底层调用的也是String.split只是封装了下

热心网友 时间:2024-11-28 23:13

举例:
String[] strs = "".split(",");
String[] strs = ",".split(",");
‍String[] strs = ",1,".split(",");
三个结果分别是:
strs.length=1,strs[0]=""
strs.length=0
strs.length=2,strs[0]="",strs[1]="1"
这三个的结果在你意料之中吗?String.split使用起来潜规则比较多,即使自己清楚,别人也未必一眼就看明白。为了不引起误会,建议使用StringUtils.split来替代,它对空字符串""会进行过滤。
String[] strs = StringUtils.split(",1,,2,", ",");
结果是strs.length=2,strs[0]="1",strs[1]="2"对比上面的第三个的结果应该有结论了。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
大同四区和市区的区别 大同云冈属于哪里 大同市云冈区建成区范围都有哪些 it wasn't long before i found a job.---before是什么意思 It wasn't long before a man from It wasn't long before和It won't be long before有什么区别吗? it wasn't long before和it won't be long before有什么不同?_百度知 ... 微信怎么查和一个好友的红包记录 马龙巴黎奥运会夺冠了吗 明天是中国的情人节??? 防水材料公司取名三个字推荐 经典个性签名说说 男人为什么更容易出轨 婚姻中,男人的“压抑和心累”,与妻子的哪些错误习惯分不开? 为什么在所有固态和液态物质中,水的比热最大 lolita交易组团的话一般如何进行?团长一般叫留旺旺和所要款式,然后呢... 大黑药的大黑药功效介绍 哪种农药俗称黑药 大黑药的功用 黑药是什么? 黑药的功效 asmr 猫仙儿 为什么被删除 做梦梦到我是一只金丝鸟被人冤枉死了,但还是活这的状态 求乱步奇谭op 乱步奇谭op为什么叫做便秘神曲? 求乱步奇谭op完整版中文歌词 没有银行卡,到哪去办理支付宝?怎样办理? 乱步奇谭op 求乱步奇谭op的中文谐音 乱步奇谭片头曲和片尾曲完整版,类型:动漫 一九八一年贰角铜币值多少钱? 浙江食品药品监督管理局培训中心的组织机构 浙江省食品药品监督管理局副局长是什么级别 现在化妆品注册申请这一块归浙江食品药品监督管理局管,还是哪里管... 台州市食品药品监督管理局的介绍 给爸爸买的沪惠保,在哪能查询&#x2304;订单?投保过的朋友给介绍下呗?_百度... 26和39的最大公因数和最小公倍数是多少,求算式! 26和39的最小公倍数和最大公因数 39和26的最小公倍数 男孩命最好的出生时辰 什么时候出生最旺 q拉人是什么套路 怎么查询泰康保险单号0616883? 母亲节对儿子的寄语 我的妈妈800字高分作文 怎么预测未来? 如何精准预测未来 林惊羽为什么回忆碧瑶 林惊羽不希望碧瑶复活吗 诛仙青云志林惊羽结局是怎么样的? 青云志碧瑶最后复活了吗