String类的split方法不包括它返回的数组中的尾随空字符串。我如何克服这个限制:
class TestRegex{
public static void main(String...args){
String s = "a:b:c:";
String [] pieces = s.split(":");
System.out.println(pieces.length); // prints 3...I want 4.
}
}
答案 0 :(得分:19)
此方法就像通过调用一样工作 两个参数的分裂方法 给定表达式和限制参数 为零。
对于带有limit参数的拆分,它说:
如果n是非正数,那么模式 将被应用多次 可能,阵列可以有任何 长度。如果n为零则为模式 将被应用多次 可能,阵列可以有任何 长度和尾随空字符串 将被丢弃。
因此,尝试使用非正限制参数调用split方法,如下所示:
String[] pieces = s.split(":", -1);