为了账号安全,请及时绑定邮箱和手机立即绑定

Java字符串拆分删除空值

Java字符串拆分删除空值

DIEA 2019-06-12 21:32:38
Java字符串拆分删除空值我试图使用分隔符来分割值。但我发现了令人惊讶的结果String data = "5|6|7||8|9||";String[] split = data.split("\\|");System.out.println(split.length);我期望得到8个数值。[5,6,7,空,8,9,空]但我只得到了6个数值。任何想法和方法。无论空值出现在任何地方,它都应该在数组中。
查看完整描述

3 回答

?
汪汪一只猫

TA贡献1898条经验 获得超8个赞

从.的文件String.split(String regex):

该方法的工作方式就像调用带有给定表达式和限制参数为零的双参数拆分方法一样。因此,结果数组中不包含尾随空字符串。

因此,您必须使用两个参数版本。String.split(String regex, int limit)具有负值的:

String[] split = data.split("\\|",-1);

医生:

如果限制n大于零,则模式将最多应用n-1次,数组的长度将不大于n,数组的最后一个条目将包含最后匹配分隔符以外的所有输入。如果n是非正的,那么模式将被应用尽可能多次,并且数组可以有任意长度。如果n是零,那么模式将被应用尽可能多次,数组可以有任意长度,尾随空字符串将被丢弃。

这不会遗漏任何空元素,包括后面的元素。


查看完整回答
反对 回复 2019-06-12
  • 3 回答
  • 0 关注
  • 1473 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号