Я замечаю странное поведение при использовании метода split()
в Java.
У меня есть следующая строка: 0|1|2|3|4|5|6|7|8|9|10
String currentString[] = br.readLine().split("\\|");
System.out.println("Length:"+currentString.length);
for(int i=0;i < currentString.length;i++){
System.out.println(currentString[i]);
}
Это даст желаемый результат:
Length: 11
0
1
2
3
4
5
6
7
8
9
10
Однако, если я получу строку: 0|1|2|3|4|5|6|7|8||
Я получаю следующие результаты:
Length: 8
0
1
2
3
4
5
6
7
8
Последние 2 пустые опущены. Мне нужно, чтобы тары были сохранены. Не уверен, что я делаю не так. Я также попытался использовать разделение таким же образом. ... split("\\|",-1);
но это возвращает всю строку длиной 1.
Любая помощь будет принята с благодарностью!