2016-12-14 111 views
2

我不明白它爲什麼這樣工作 - 請參見下面的split()方法的用例。Java拆分()方法混淆

String x = "one,"; 
    String y = ",one"; 
    System.out.println(Arrays.toString(x.split(","))); //prints [one] 
    System.out.println(Arrays.toString(y.split(","))); //prints [, one] 

我期待他們打印[one,]和[,one]。

+1

嘗試'System.out.println(Arrays.toString(x.split(「,」,-1))); //打印[one,]' –

回答

4

split的答案的Javadoc在於:

此方法彷彿通過與給定表達式和爲零的限制參數調用兩個參數分割方法。 因此尾隨的空字符串不包含在結果數組中。

x.split(",",-1)將導致[one, ]