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.15 by jsr166, Wed May 18 01:39:35 2005 UTC vs.
Revision 1.16 by dl, Wed May 25 14:05:06 2005 UTC

# Line 645 | Line 645 | public class TreeMap<K,V>
645  
646      public Map.Entry<K,V> firstEntry() {
647          Entry<K,V> e = getFirstEntry();
648 <        return (e == null)? null : new AbstractMap.SimpleImmutableEntry(e);
648 >        return (e == null)? null : new AbstractMap.SimpleImmutableEntry<K,V>(e);
649      }
650  
651      public Map.Entry<K,V> lastEntry() {
652          Entry<K,V> e = getLastEntry();
653 <        return (e == null)? null : new AbstractMap.SimpleImmutableEntry(e);
653 >        return (e == null)? null : new AbstractMap.SimpleImmutableEntry<K,V>(e);
654      }
655  
656      public Map.Entry<K,V> pollFirstEntry() {
657          Entry<K,V> p = getFirstEntry();
658          if (p == null)
659              return null;
660 <        Map.Entry result = new AbstractMap.SimpleImmutableEntry(p);
660 >        Map.Entry<K,V> result = new AbstractMap.SimpleImmutableEntry<K,V>(p);
661          deleteEntry(p);
662          return result;
663      }
# Line 666 | Line 666 | public class TreeMap<K,V>
666          Entry<K,V> p = getLastEntry();
667          if (p == null)
668              return null;
669 <        Map.Entry result = new AbstractMap.SimpleImmutableEntry(p);
669 >        Map.Entry<K,V> result = new AbstractMap.SimpleImmutableEntry<K,V>(p);
670          deleteEntry(p);
671          return result;
672      }
# Line 679 | Line 679 | public class TreeMap<K,V>
679       */
680      public Map.Entry<K,V> lowerEntry(K key) {
681          Entry<K,V> e =  getLowerEntry(key);
682 <        return (e == null)? null : new AbstractMap.SimpleImmutableEntry(e);
682 >        return (e == null)? null : new AbstractMap.SimpleImmutableEntry<K,V>(e);
683      }
684  
685      /**
# Line 701 | Line 701 | public class TreeMap<K,V>
701       */
702      public Map.Entry<K,V> floorEntry(K key) {
703          Entry<K,V> e = getFloorEntry(key);
704 <        return (e == null)? null : new AbstractMap.SimpleImmutableEntry(e);
704 >        return (e == null)? null : new AbstractMap.SimpleImmutableEntry<K,V>(e);
705      }
706  
707      /**
# Line 723 | Line 723 | public class TreeMap<K,V>
723       */
724      public Map.Entry<K,V> ceilingEntry(K key) {
725          Entry<K,V> e = getCeilingEntry(key);
726 <        return (e == null)? null : new AbstractMap.SimpleImmutableEntry(e);
726 >        return (e == null)? null : new AbstractMap.SimpleImmutableEntry<K,V>(e);
727      }
728  
729      /**
# Line 745 | Line 745 | public class TreeMap<K,V>
745       */
746      public Map.Entry<K,V> higherEntry(K key) {
747          Entry<K,V> e = getHigherEntry(key);
748 <        return (e == null)? null : new AbstractMap.SimpleImmutableEntry(e);
748 >        return (e == null)? null : new AbstractMap.SimpleImmutableEntry<K,V>(e);
749      }
750  
751      /**
# Line 1128 | Line 1128 | public class TreeMap<K,V>
1128                  getFirstEntry() : getCeilingEntry(fromKey);
1129              if (e == null || (!toEnd && compare(e.key, toKey) >= 0))
1130                  return null;
1131 <            Map.Entry result = new AbstractMap.SimpleImmutableEntry(e);
1131 >            Map.Entry<K,V> result = new AbstractMap.SimpleImmutableEntry<K,V>(e);
1132              deleteEntry(e);
1133              return result;
1134          }
# Line 1138 | Line 1138 | public class TreeMap<K,V>
1138                  getLastEntry() : getLowerEntry(toKey);
1139              if (e == null || (!fromStart && compare(e.key, fromKey) < 0))
1140                  return null;
1141 <            Map.Entry result = new AbstractMap.SimpleImmutableEntry(e);
1141 >            Map.Entry<K,V> result = new AbstractMap.SimpleImmutableEntry<K,V>(e);
1142              deleteEntry(e);
1143              return result;
1144          }
# Line 1153 | Line 1153 | public class TreeMap<K,V>
1153  
1154          public Map.Entry<K,V> ceilingEntry(K key) {
1155              TreeMap.Entry<K,V> e = subceiling(key);
1156 <            return e == null? null : new AbstractMap.SimpleImmutableEntry(e);
1156 >            return e == null? null : new AbstractMap.SimpleImmutableEntry<K,V>(e);
1157          }
1158  
1159          public K ceilingKey(K key) {
# Line 1172 | Line 1172 | public class TreeMap<K,V>
1172  
1173          public Map.Entry<K,V> higherEntry(K key) {
1174              TreeMap.Entry<K,V> e = subhigher(key);
1175 <            return e == null? null : new AbstractMap.SimpleImmutableEntry(e);
1175 >            return e == null? null : new AbstractMap.SimpleImmutableEntry<K,V>(e);
1176          }
1177  
1178          public K higherKey(K key) {
# Line 1190 | Line 1190 | public class TreeMap<K,V>
1190  
1191          public Map.Entry<K,V> floorEntry(K key) {
1192              TreeMap.Entry<K,V> e = subfloor(key);
1193 <            return e == null? null : new AbstractMap.SimpleImmutableEntry(e);
1193 >            return e == null? null : new AbstractMap.SimpleImmutableEntry<K,V>(e);
1194          }
1195  
1196          public K floorKey(K key) {
# Line 1208 | Line 1208 | public class TreeMap<K,V>
1208  
1209          public Map.Entry<K,V> lowerEntry(K key) {
1210              TreeMap.Entry<K,V> e = sublower(key);
1211 <            return e == null? null : new AbstractMap.SimpleImmutableEntry(e);
1211 >            return e == null? null : new AbstractMap.SimpleImmutableEntry<K,V>(e);
1212          }
1213  
1214          public K lowerKey(K key) {
# Line 1513 | Line 1513 | public class TreeMap<K,V>
1513      /**
1514       * Compares two keys using the correct comparison method for this TreeMap.
1515       */
1516 <    private int compare(K k1, K k2) {
1517 <        return comparator==null ? ((Comparable<? super K>)k1).compareTo(k2)
1518 <                                : comparator.compare(k1, k2);
1516 >    private int compare(Object k1, Object k2) {
1517 >        return comparator==null ? ((Comparable<? super K>)k1).compareTo((K)k2)
1518 >                                : comparator.compare((K)k1, (K)k2);
1519      }
1520  
1521      /**

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines