Ticket #8902: initsizes.diff

File initsizes.diff, 10.1 KB (added by shinigami, 11 years ago)

set init size for lists when obvious

  • src/org/openstreetmap/josm/actions/CombineWayAction.java

     
    153153                List<Way> unreversedTagWays = new ArrayList<Way>(ways);
    154154                unreversedTagWays.removeAll(reversedWays);
    155155                ReverseWayTagCorrector reverseWayTagCorrector = new ReverseWayTagCorrector();
    156                 List<Way> reversedTagWays = new ArrayList<Way>();
     156                List<Way> reversedTagWays = new ArrayList<Way>(reversedWays.size());
    157157                Collection<Command> changePropertyCommands =  null;
    158158                for (Way w : reversedWays) {
    159159                    Way wnew = new Way(w);
     
    496496        }
    497497
    498498        protected Set<Node> getNodes(Stack<NodePair> pairs) {
    499             HashSet<Node> nodes = new LinkedHashSet<Node>();
     499            HashSet<Node> nodes = new LinkedHashSet<Node>(2*pairs.size());
    500500            for (NodePair pair: pairs) {
    501501                nodes.add(pair.getA());
    502502                nodes.add(pair.getB());
     
    516516        }
    517517
    518518        protected Set<Node> getNodes() {
    519             Set<Node> nodes = new LinkedHashSet<Node>();
     519            Set<Node> nodes = new LinkedHashSet<Node>(2 * edges.size());
    520520            for (NodePair pair: edges) {
    521521                nodes.add(pair.getA());
    522522                nodes.add(pair.getB());
  • src/org/openstreetmap/josm/actions/CreateCircleAction.java

     
    136136            if (a1 < a2) { double at = a1; Node nt = n1; a1 = a2; n1 = n2; a2 = at; n2 = nt; }
    137137
    138138            // build a way for the circle
    139             List<Node> wayToAdd = new ArrayList<Node>();
     139            List<Node> wayToAdd = new ArrayList<Node>(numberOfNodesInCircle + 1);
    140140
    141141            for (int i = 1; i <= numberOfNodesInCircle; i++) {
    142142                double a = a2 + 2*Math.PI*(1.0 - i/(double)numberOfNodesInCircle); // "1-" to get it clock-wise
  • src/org/openstreetmap/josm/actions/PasteTagsAction.java

     
    262262     */
    263263    public static boolean pasteTagsFromText(Collection<OsmPrimitive> selection, String text) {
    264264        Map<String, String> tags = TextTagParser.readTagsFromText(text);
    265         List<Command> commands = new ArrayList<Command>();
    266265        if (tags==null || tags.isEmpty()) {
    267266            TextTagParser.showBadBufferMessage(help);
    268267            return false;
    269268        }
    270269        if (!TextTagParser.validateTags(tags)) return false;
     270
     271        List<Command> commands = new ArrayList<Command>(tags.size());
    271272        String v;
    272273        for (String key: tags.keySet()) {
    273274            v = tags.get(key);
  • src/org/openstreetmap/josm/actions/search/SearchAction.java

     
    102102        while (searchHistory.size() > maxsize) {
    103103            searchHistory.removeLast();
    104104        }
    105         List<String> savedHistory = new ArrayList<String>();
     105        List<String> savedHistory = new ArrayList<String>(searchHistory.size());
    106106        for (SearchSetting item: searchHistory) {
    107107            savedHistory.add(item.writeToString());
    108108        }
  • src/org/openstreetmap/josm/command/DeleteCommand.java

     
    201201        if (toDelete.size() == 1)
    202202            return null;
    203203        else {
    204             List<PseudoCommand> children = new ArrayList<PseudoCommand>();
     204            List<PseudoCommand> children = new ArrayList<PseudoCommand>(toDelete.size());
    205205            for (final OsmPrimitive osm : toDelete) {
    206206                children.add(new PseudoCommand() {
    207207
  • src/org/openstreetmap/josm/data/validation/tests/SimilarNamedWays.java

     
    7979
    8080                int levenshteinDistance = getLevenshteinDistance(name, name2);
    8181                if (0 < levenshteinDistance && levenshteinDistance <= 2) {
    82                     List<OsmPrimitive> primitives = new ArrayList<OsmPrimitive>();
     82                    List<OsmPrimitive> primitives = new ArrayList<OsmPrimitive>(2);
    8383                    primitives.add(w);
    8484                    primitives.add(w2);
    8585                    errors.add(new TestError(this, Severity.WARNING, tr("Similarly named ways"), SIMILAR_NAMED, primitives));
  • src/org/openstreetmap/josm/data/validation/tests/UnconnectedWays.java

     
    244244            }
    245245            LatLon topLeft  = new LatLon(y2+fudge, x1-fudge);
    246246            LatLon botRight = new LatLon(y1-fudge, x2+fudge);
    247             List<LatLon> ret = new ArrayList<LatLon>();
     247            List<LatLon> ret = new ArrayList<LatLon>(2);
    248248            ret.add(topLeft);
    249249            ret.add(botRight);
    250250            return ret;
  • src/org/openstreetmap/josm/gui/MapStatus.java

     
    312312
    313313                                        // These labels may need to be updated from the outside
    314314                                        // so collect them
    315                                         List<JLabel> lbls = new ArrayList<JLabel>();
     315                                        List<JLabel> lbls = new ArrayList<JLabel>(osms.size());
    316316                                        for (final OsmPrimitive osm : osms) {
    317317                                            JLabel l = popupBuildPrimitiveLabels(osm);
    318318                                            lbls.add(l);
  • src/org/openstreetmap/josm/gui/io/CloseChangesetDialog.java

     
    213213     */
    214214    public Collection<Changeset> getSelectedChangesets() {
    215215        Object [] sel = lstOpenChangesets.getSelectedValues();
    216         ArrayList<Changeset> ret = new ArrayList<Changeset>();
     216        ArrayList<Changeset> ret = new ArrayList<Changeset>(sel.length);
    217217        for (Object o: sel) {
    218218            ret.add((Changeset)o);
    219219        }
  • src/org/openstreetmap/josm/gui/layer/geoimage/CorrelateGpxWithImages.java

     
    290290            gc.anchor = GridBagConstraints.WEST;
    291291            panelTf.add(new JLabel(tr("I am in the timezone of: ")), gc);
    292292
    293             Vector<String> vtTimezones = new Vector<String>();
    294293            String[] tmp = TimeZone.getAvailableIDs();
     294            Vector<String> vtTimezones = new Vector<String>(tmp.length);
    295295
    296296            for (String tzStr : tmp) {
    297297                TimeZone tz = TimeZone.getTimeZone(tzStr);
  • src/org/openstreetmap/josm/gui/layer/geoimage/GeoImageLayer.java

     
    836836    }
    837837
    838838    public List<ImageEntry> getImages() {
    839         List<ImageEntry> copy = new ArrayList<ImageEntry>();
     839        List<ImageEntry> copy = new ArrayList<ImageEntry>(data.size());
    840840        for (ImageEntry ie : data) {
    841841            copy.add(ie.clone());
    842842        }
  • src/org/openstreetmap/josm/gui/preferences/SourceEditor.java

     
    15301530        }
    15311531
    15321532        public boolean put(Collection<? extends SourceEntry> entries) {
    1533             Collection<Map<String, String>> setting = new ArrayList<Map<String, String>>();
     1533            Collection<Map<String, String>> setting = new ArrayList<Map<String, String>>(entries.size());
    15341534            for (SourceEntry e : entries) {
    15351535                setting.add(serialize(e));
    15361536            }
  • src/org/openstreetmap/josm/io/imagery/WMSImagery.java

     
    201201    }
    202202
    203203    private List<LayerDetails> parseLayers(List<Element> children, Set<String> parentCrs) {
    204         List<LayerDetails> details = new ArrayList<LayerDetails>();
     204        List<LayerDetails> details = new ArrayList<LayerDetails>(children.size());
    205205        for (Element element : children) {
    206206            details.add(parseLayer(element, parentCrs));
    207207        }