Browse Source

Don't unnecessarily convert from ArrayList to array, use the ArrayList directly instead, this speeds up BiffViewer and related unit tests

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1554534 13f79535-47bb-0310-9956-ffa450edef68
tags/REL_3_10_FINAL
Dominik Stadler 10 years ago
parent
commit
2c7fff15e1
1 changed files with 7 additions and 9 deletions
  1. 7
    9
      src/java/org/apache/poi/hssf/dev/BiffViewer.java

+ 7
- 9
src/java/org/apache/poi/hssf/dev/BiffViewer.java View File

@@ -88,9 +88,8 @@ public final class BiffViewer {
temp.add(record);

if (dumpInterpretedRecords) {
String[] headers = recListener.getRecentHeaders();
for (int i = 0; i < headers.length; i++) {
ps.println(headers[i]);
for (String header : recListener.getRecentHeaders()) {
ps.println(header);
}
ps.print(record.toString());
}
@@ -436,7 +435,7 @@ public final class BiffViewer {

private static final class BiffRecordListener implements IBiffRecordListener {
private final Writer _hexDumpWriter;
private final List<String> _headers;
private List<String> _headers;
private final boolean _zeroAlignEachRecord;
private final boolean _noHeader;
public BiffRecordListener(Writer hexDumpWriter, boolean zeroAlignEachRecord, boolean noHeader) {
@@ -462,11 +461,10 @@ public final class BiffViewer {
}
}
}
public String[] getRecentHeaders() {
String[] result = new String[_headers.size()];
_headers.toArray(result);
_headers.clear();
return result;
public List<String> getRecentHeaders() {
List<String> result = _headers;
_headers = new ArrayList<String>();
return result;
}
private static String formatRecordDetails(int globalOffset, int sid, int size, int recordCounter) {
StringBuffer sb = new StringBuffer(64);

Loading…
Cancel
Save