Comportamento de String.split no java 1.6?
Meu código é:
String s = "1;;;; 23;;";
System.out.println(s.split(";").length);
e dá como saída5
. O código fonte dosplit
é:
public String[] split(String regex) {
return split(regex, 0);
}
e a documentação diz:
Esse método funciona como se invocasse o método split de dois argumentos (java.lang.String, int) com a expressão dada e um argumento de limite de zero. Cadeias vazias à direita não são, portanto, incluídas na matriz resultante.
A string "boo: e: foo", por exemplo, produz os seguintes resultados com estas expressões:
Regex Result
: { "boo", "and", "foo" }
o { "b", "", ":and:f" }
Se eu imprimir as cordas que tenho:
1
23
Eu não deveria sair disso1;;;; 23;;
algo como{"1", "", "", "", " 23", ""}
?