论坛首页 入门讨论版 Java

字符串分割的两种方法

浏览 1065 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
最后更新时间:2007-08-31 关键字: 字符串 分割
java 代码
 
  1. 方法1:采用String的split,验证代码如下:  
  2. import java.util.Arrays;  
  3. public class TestSplit {  
  4.  public static void main(String[] args) {  
  5.   String orignString = new String("5,8,7,4,3,9,1");  
  6.   String[] testString = orignString.split(",");  
  7.   int[] test = { 0000000 };  
  8.   //String to int  
  9.   for (int i = 0; i < testString.length; i++) {  
  10.    test[i] = Integer.parseInt(testString[i]);  
  11.   }  
  12.   //sort  
  13.   Arrays.sort(test);  
  14.   //asc sort  
  15.   for (int j = 0; j < test.length; j++) {  
  16.    System.out.println(test[j]);  
  17.   }  
  18.   System.out.println("next ");  
  19. //  desc  
  20.      for (int i = (test.length - 1); i >= 0; i--) {  
  21.       System.out.println(test[i]);  
  22.      }  
  23.  }  
  24. }  
  25. 方法2:采用StringTokenizer  
  26.   
  27. import java.util.Arrays;  
  28. import java.util.StringTokenizer;  
  29. public class SplitStringTest {  
  30.  public static void main(String[] args) {  
  31.   String s = new String("5,8,7,4,3,9,1");    
  32.   int length = s.length();  
  33.   //split   s with ","  
  34.   StringTokenizer commaToker = new StringTokenizer(s, ",");  
  35.   String[] result = new String[commaToker.countTokens()];  
  36.   int k = 0;  
  37.   while (commaToker.hasMoreTokens()) {  
  38.    result[k] = commaToker.nextToken();  
  39.    k++;  
  40.   }  
  41.   int[] a = new int[result.length];  
  42.   for (int i = 0; i < result.length; i++) {  
  43.    a[i] = Integer.parseInt(result[i]);  
  44.   }  
  45.   //sort  
  46.   Arrays.sort(a);  
  47.   //asc sort  
  48.   for (int j = 0; j < result.length; j++) {  
  49.    System.out.println(a[j]);  
  50.   }  
  51.  }  
  52. }   
   
最后更新时间:2007-08-21
好帖,顶下,以前只知道用split
   
0 请登录后投票
最后更新时间:2007-08-21
但是split有些字符需要转义符例如.的分割要用\\.
   
0 请登录后投票
最后更新时间:2007-09-27
引用
好帖,顶下,以前只知道用split


StringTokenizer 是出于兼容性的原因而被保留的遗留类(虽然在新代码中并不鼓励使用它)。建议所有寻求此功能的人使用 String 的 split 方法或 java.util.regex 包。
                                   ——  JAVA5.0API_CN

典型的瞎评论。
   
0 请登录后投票
最后更新时间:2007-09-27
楼上正解
ps:正则式是个好东西
   
0 请登录后投票
最后更新时间:2007-10-09
split使用正则表达式,所以对于.(正则表达式中的特殊字符)等操作符要特殊处理。如split("[.]")
   
0 请登录后投票
论坛首页 入门讨论版 Java

跳转论坛:
JavaEye推荐