-2

我无法理解代码谁能帮忙

   private static String[] split(String splitStr, String delimiter) {
   StringBuffer token = new StringBuffer();
 Vector tokens = new Vector();

 char[] chars = splitStr.toCharArray();
 for (int i=0; i < chars.length; i++) {
     if (delimiter.indexOf(chars[i]) != -1) {

         if (token.length() > 0) {
             tokens.addElement(token.toString());
             token.setLength(0);
         }
     } else {
         token.append(chars[i]);
     }
 }

 if (token.length() > 0) {
     tokens.addElement(token.toString());
 }

 String[] splitArray = new String[tokens.size()];
 for (int i=0; i < splitArray.length; i++) {
     splitArray[i] = (String) tokens.elementAt(i);
 }
 return splitArray;
}
4

1 回答 1

0

我认为它只是迭代第一个参数(splitStr)并根据分隔符(第二个参数)将其拆分。它通过将所有单独的令牌放入称为“令牌”的向量中来做到这一点。在最后几行中,基本上将向量的所有元素放入一个数组中,然后返回该数组。

于 2013-05-26T13:33:30.993 回答