FastTreeMap is not compatible with TreeMap ------------------------------------------
Key: COLLECTIONS-394 URL: https://issues.apache.org/jira/browse/COLLECTIONS-394 Project: Commons Collections Issue Type: Bug Components: Map Affects Versions: 3.2.1 Environment: all Reporter: Michael Pradel FastTreeMap extends TreeMap in a way that doesn't preserve the superclass behavior. For example, the following code prints 'null', but I would expect it to print '1=1', which is what TreeMap does: TreeMap map = new FastTreeMap(); //TreeMap map = new TreeMap(); map.put(1, "1"); map.put(3, "3"); Entry e = map.floorEntry(2); System.out.println(e); This behavior is surprising and can hit you every time a reference of type TreeMap refers to an instance of FastTreeMap. A subclass instance used through a superclass interface shouldn't change the visible behavior of its superclass. The reason for this problem seems to be that FastTreeMap both extends TreeMap and delegates to a TreeMap via the 'map' field. I.e., there are two map instances for a single FastTreeMap instance. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira