org.apache.commons.lang3.StringUtils.split 驚現大bug

org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.StringUtils;
import org.junit.Test;

import java.util.ArrayList;
import java.util.List;

public class SplitTest {

    @Test
    public void test() {
        String s = "123--12-3131232132";
        String[] split = StringUtils.split(s, "12");
        String[] split1 = s.split("12");
        for (String s1 : split) {
            System.out.println(s1);
        }

        for (String s1 : split1) {
            System.out.println(s1);
        }
    }
}

程序媛我驚奇的發現 apache完全顛覆了java split 的用法,StringUtils.split("原始數據","分割點")

上邊代碼的運行結果如下:

總結:

1.遇到分割點char[] 中含有的全部正序倒序亂序的char[] 全部照分割點計算

2.這個方法也不是一無是處,最起碼 刪除打碼文字的時候還是有些用的

3.慎用第三方方法,一定要Junit本地測試,非要想用 Apache的正常分割功能,也有提供  

StringUtils.splitByWholeSeparator()

 

 

發佈了12 篇原創文章 · 獲贊 2 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章