赞
踩
最近在做一些字符串方面的拆分清洗和比对,趁着有空将java里多种拆分字符串的方法做一下比对,常用的四种拆分方法,第一种是字符串自带的split();其他三种是org.apache.commons.lang.StringUtils提供的方法,分别是:StringUtils.split()、StringUtils.splitByWholeSeparator()、StringUtils.splitPreserveAllTokens()。本次比对未看源码,只比对结果和效率。有兴趣的朋友可以看一下源码,比较简单。
下面是比较方法的代码:
- public static void main(String[] args) {
- String a = "";
- out(a.split(","));
- out(StringUtils.split(a, ","));
- out(StringUtils.splitByWholeSeparator(a, ","));
- out(StringUtils.splitPreserveAllTokens(a, ","));
- }
-
- static void out(String[] strs) {
- for (int i = 0; i < strs.length; i++) {
- String str = strs[i];
- if (str == null) {
- System.out.print("NULL");
- } else if (str.equals("")) {
- System.out.print("空字符");
- } else if (str.equals(" ")) {
- System.out.print("空格");
- } else {
- System.out.print(str);
- }
- if (i != strs.length - 1) {
- System.out.print("-");
- }
- }
- System.out.print("|" + strs.length);
- System.out.println();
- }
输出一下比较的结果:
字符串 方法 |
空字符 | a | ,a | ,a, |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。