Mercurial > dive4elements > river
diff artifacts/src/main/java/org/dive4elements/river/exports/minfo/BedQualityExporter.java @ 7254:fe32a7f9655e
Reduce usage of careless 'for (int i = 0; i < x.size(); i++)' pattern.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Sat, 05 Oct 2013 17:52:16 +0200 |
parents | 41567bf1e131 |
children | d72459b90397 |
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/exports/minfo/BedQualityExporter.java Sat Oct 05 12:49:53 2013 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/exports/minfo/BedQualityExporter.java Sat Oct 05 17:52:16 2013 +0200 @@ -15,7 +15,7 @@ import java.text.DateFormat; import java.text.NumberFormat; import java.util.Arrays; -import java.util.LinkedList; +import java.util.ArrayList; import java.util.List; import org.apache.log4j.Logger; @@ -71,18 +71,20 @@ BedDiameterResult[] beds = results[i].getBedResults(); for (int j = 0; j < beds.length; j++) { TDoubleArrayList bkms = beds[j].getKms(); - for (int k = 0; k < bkms.size(); k++) { - if (!kms.contains(bkms.get(k))) { - kms.add(bkms.get(k)); + for (int k = 0, K = bkms.size(); k < K; k++) { + double km = bkms.get(k); + if (!kms.contains(km)) { // XXX: O(N^2) + kms.add(km); } } } BedloadDiameterResult[] loads = results[i].getBedloadResults(); for (int j = 0; j < loads.length; j++) { TDoubleArrayList lkms = loads[i].getKms(); - for (int k = 0; k < lkms.size(); k++) { - if (!kms.contains(lkms.get(k))) { - kms.add(lkms.get(k)); + for (int k = 0, L = lkms.size(); k < L; k++) { + double km = lkms.get(k); + if (!kms.contains(km)) { // XXX: O(N^2) + kms.add(km); } } } @@ -94,8 +96,8 @@ } kms.sort(); - List<double[]> rows = new LinkedList<double[]>(); - for (int i = 0; i < kms.size(); i++) { + List<double[]> rows = new ArrayList<double[]>(kms.size()); + for (int i = 0, K = kms.size(); i < K; i++) { double[] row = new double[cols]; double km = kms.get(i); row[0] = km; @@ -134,7 +136,7 @@ } for (double[] d : rows) { logger.debug(Arrays.toString(d)); - List<String> cells = new LinkedList<String>(); + List<String> cells = new ArrayList<String>(d.length); for (int i = 0; i < d.length; i++) { if (!Double.isNaN(d[i])) { NumberFormat nf = Formatter.getFormatter(context, 1, 3); @@ -174,7 +176,7 @@ protected void writeCSVHeader(CSVWriter writer) { logger.debug("writeCSVHeader()"); - List<String> header = new LinkedList<String>(); + List<String> header = new ArrayList<String>(); if (results != null) { header.add(msg(CSV_HEADER_KM, "km")); for (int i = 0; i < results.length; i++) {