In a regular Java map, the values are passive -- you can store, retrieve and replace values, but can't easily perform operations on them.
A supermap is a Java map with active values: each time you add a new value (to a specific key) the map performs an operation based on the current and new value. The range of operations is unlimited -- calculate a sum, average or standard deviation, for instance.
The package contains numerous standard supermaps plus the ability to build your own supermap by just implementing the business logic of your algorithm.
Source included. Free evaluation. Free for non-commercial use.