Не знаю, как на самом деле работает разделение строк в этом случае

Я не получаю следующее:

В следующей Строке :

Строке s = "1234; x ;; y;" ;

если я это сделаю:
String [] s2 = s.split (";");

Я получаю s2.length равным 4 и

s2[0] = "1234";  
s2[1] = "x";  
s2[2] = "";  
s2[3] = "y"; 

Но в строке : String s = "1234; x; y ;;";

Я получаю:

s2.length равным 3 и

s2[0] = "1234";  
s2[1] = "x";  
s2[2] = "y"; 

?

В чем разница, а я не Не получишь ли и в последнем случае 4?

ОБНОВЛЕНИЕ:
Использование -1 не было таким поведением, которого я ожидал.
Я имею в виду, что последняя точка с запятой - это конец String , поэтому в последнем примере я также ожидал 4 как длину массива

16
задан Jean-François Corbett 17 February 2012 в 03:58
поделиться