关于split方法的细节

    public static void main(String[] args) {
        String str = "123";
        String a[] = str.split(",");
        String b[] = str.split("|");
        String c[] = StringUtils.split(str,",");
        String d[] = StringUtils.split(str,"|");
        System.out.println(a.length);
        System.out.println(b.length);
        System.out.println(c.length);
        System.out.println(d.length);
    }

String自带的split的方法是没有将分隔符转义的,所以这里使用竖线会被当做正则表达式的一部分。

所以实际输出效果是1 3 1 1关于split方法的细节_第1张图片

使用split方法尽量使用StringUtils的方法,否则可能会出现预料之外的结果。

你可能感兴趣的:(java)