使用 Java 的字符串分割方法检索非空值
使用 split() 方法分割字符串时,必须了解如何分割字符串它处理空值。默认情况下,此方法会从结果数组中删除尾随的空字符串值。
要说明此行为,请考虑以下代码:
String data = "5|6|7||8|9||"; String[] split = data.split("\|"); System.out.println(split.length);
预期结果是一个包含八个元素的数组,在双管道字符 (||) 表示的位置包含空字符串。但是,仅获得六个值:[5,6,7,8,9]。
覆盖默认行为
要检索非空值,请使用split() 方法的重载版本,将限制参数设置为负值:
String[] split = data.split("\|", -1);
通过将限制设置为负值值(在本例中为 -1),模式会应用尽可能多次,并且数组包含所有匹配和不匹配的值,无论它们是否为空。
理解文档
split() 方法的文档提供了对其的宝贵见解行为:
规则的例外
需要注意的是,删除尾随空字符串仅适用于通过拆分机制创建的字符串。分割前为空的字符串被视为原始字符串,不会被删除。
以上是如何使用 Java 的字符串 split() 方法检索所有值,包括空值?的详细内容。更多信息请关注PHP中文网其他相关文章!