ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/src/main/java/util/TreeMap.java
(Generate patch)

Comparing jsr166/src/main/java/util/TreeMap.java (file contents):
Revision 1.45 by jsr166, Sun May 18 23:47:56 2008 UTC vs.
Revision 1.49 by jsr166, Wed Sep 1 07:48:47 2010 UTC

# Line 1 | Line 1
1   /*
2 < * Copyright 1997-2007 Sun Microsystems, Inc.  All Rights Reserved.
2 > * Copyright 1997-2008 Sun Microsystems, Inc.  All Rights Reserved.
3   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4   *
5   * This code is free software; you can redistribute it and/or modify it
# Line 93 | Line 93 | package java.util;
93   * @param <V> the type of mapped values
94   *
95   * @author  Josh Bloch and Doug Lea
96 * @version %I%, %G%
96   * @see Map
97   * @see HashMap
98   * @see Hashtable
# Line 1022 | Line 1021 | public class TreeMap<K,V>
1021      }
1022  
1023      Iterator<K> descendingKeyIterator() {
1024 <        return new DescendingKeyIterator(getFirstEntry());
1024 >        return new DescendingKeyIterator(getLastEntry());
1025      }
1026  
1027      static final class KeySet<E> extends AbstractSet<E> implements NavigableSet<E> {
# Line 1069 | Line 1068 | public class TreeMap<K,V>
1068          }
1069          public NavigableSet<E> subSet(E fromElement, boolean fromInclusive,
1070                                        E toElement,   boolean toInclusive) {
1071 <            return new TreeSet<E>(m.subMap(fromElement, fromInclusive,
1072 <                                           toElement,   toInclusive));
1071 >            return new KeySet<E>(m.subMap(fromElement, fromInclusive,
1072 >                                          toElement,   toInclusive));
1073          }
1074          public NavigableSet<E> headSet(E toElement, boolean inclusive) {
1075 <            return new TreeSet<E>(m.headMap(toElement, inclusive));
1075 >            return new KeySet<E>(m.headMap(toElement, inclusive));
1076          }
1077          public NavigableSet<E> tailSet(E fromElement, boolean inclusive) {
1078 <            return new TreeSet<E>(m.tailMap(fromElement, inclusive));
1078 >            return new KeySet<E>(m.tailMap(fromElement, inclusive));
1079          }
1080          public SortedSet<E> subSet(E fromElement, E toElement) {
1081              return subSet(fromElement, true, toElement, false);
# Line 1088 | Line 1087 | public class TreeMap<K,V>
1087              return tailSet(fromElement, true);
1088          }
1089          public NavigableSet<E> descendingSet() {
1090 <            return new TreeSet(m.descendingMap());
1090 >            return new KeySet(m.descendingMap());
1091          }
1092      }
1093  
# Line 2143 | Line 2142 | public class TreeMap<K,V>
2142          // If strictly internal, copy successor's element to p and then make p
2143          // point to successor.
2144          if (p.left != null && p.right != null) {
2145 <            Entry<K,V> s = successor (p);
2145 >            Entry<K,V> s = successor(p);
2146              p.key = s.key;
2147              p.value = s.value;
2148              p = s;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines