split 与tokenizer的区别

来源:互联网 发布:网络翻唱男歌手排行榜 编辑:程序博客网 时间:2024/06/08 20:01

至于理论方面的就不多说了,大家可以查看api,现在主要举几个例子,说明两者的区别:

例子一:

String sample1="ben        ben" ;    //其中连个ben之间间隔8个空格

String[] split1 = sample1.split(" "); //通过一个空格隔离

final List<String> oLines = new ArrayList<String>();
 final StringTokenizer tokens = new StringTokenizer(sample1, " ");   

结果:split1.length 为9     oLines.size 为2

解释:如果用split进行分离的话,他会将空格也作为一个字符串存入数组, 而tokenizer不会

例子二:

 String t1 = "ben, ,,   ,,,ben";
  String[] split2 = t1.split(",");
  final ListoLines = new ArrayList();
   final StringTokenizer tokens = new StringTokenizer(t1, ","); 
 

结果:split2.length 为7     oLines.size 为4

解释:tokenizer他会将连续相同的需要过滤的进行处理

总结:尤其是在进行空格过滤的时候,尽量的用tokenizer,如果用split很可能会出现许多,并不想得到的数据比如说空格(我是碰到过)

0 0