2017-05-08 135 views
-2
String str = "1,2,3,,"; 
    String[] arr1 = str.split(","); 
    String[] arr2 = str.split(",", -1); 

    // equals ?false 
    System.out.println(Arrays.deepEquals(arr1, arr2)); 

    // values [1, 2, 3] 
    System.out.println(Arrays.deepToString(arr1)); 

    // [1, 2, 3, , ] 
    System.out.println(Arrays.deepToString(arr2)); 

我應該選擇哪種方法?給我一些建議。String方法split(String str,int len)和split(String str)之間有什麼區別?

+0

祕密被埋在API中:https://docs.oracle.com/javase/8/docs/api/java/lang/String.html#split-java.lang.String-/https:// docs.oracle.com/javase/8/docs/api/java/lang/String.html#split-java.lang.String-int- –

+0

您需要選擇的方法取決於您要使用結果的方式。 –

回答

0

由於documentation表示split(String str,int len)將返回模式「str」的最大「len」-1匹配,因此您可以設置獲得多少結果的閾值。

在沒有限制的情況下,模式將盡可能多地應用。

相關問題