2017-05-08 129 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匹配,因此您可以设置获得多少结果的阈值。

在没有限制的情况下,模式将尽可能多地应用。

相关问题