当我们扩展 DefaultHandler 时,我们通常会覆盖 characters 函数。
我想知道哪种方法可以更有效地提取提供的字符串...
它会使用 for 循环和 StringBuilder 吗?
@Override public void characters(char[] ch, int start, int length) throws SAXException { StringBuilder sb = new StringBuilder(length); for(int i=start; i<start+length; i++) sb.append(ch[i]); String values = sb.toString(); }
它会使用一个简单的子字符串吗?
@Override public void characters(char[] ch, int start, int length) throws SAXException { String values = (new String(ch)).substring(start, start + length); }
还有另一种方法吗?