Package org.eclipse.mat.inspections.collectionextract

# Class ExtractedMap

java.lang.Object
org.eclipse.mat.inspections.collectionextract.AbstractExtractedCollection<Map.Entry<IObject,IObject>,IMapExtractor>
org.eclipse.mat.inspections.collectionextract.ExtractedMap

All Implemented Interfaces:
  `Serializable`, `Iterable<Map.Entry<IObject,IObject>>`, `IObject`

public class ExtractedMap extends AbstractExtractedCollection<Map.Entry<IObject,IObject>,IMapExtractor>
An abstract class representing a map extracted from the heap. It provides convenience methods for querying certain properties of the collection (e.g. size) and for extracting the elements of the collection

Since:
  1.5
See Also:
  - Serialized Form

## Nested Class Summary

## Nested classes/interfaces inherited from interface org.eclipse.mat.snapshot.model.IObject

`IObject.Type`

## Constructor Summary

Constructors
Constructor
Description
`ExtractedMap(IObject coll, IMapExtractor extractor)`

## Method Summary

Modifier and Type
Method
Description
`IObject`
`getByKeyIdentity(IObject key)`
Gets an object from the Map, searching by the key.
`Double`
`getCollisionRatio()`
Get the ratio of collisions inside the map.
`boolean`
`hasCollisionRatio()`
Check if collision ratio can be calculated for the map.
`Iterator<Map.Entry<IObject,IObject>>`
`iterator()`
The entries of the map.

### Methods inherited from class org.eclipse.mat.inspections.collectionextract.AbstractExtractedCollection

`extractEntries, extractEntryIds, getCapacity, getClassSpecificName, getClazz, getDisplayName, getFillRatio, getGCRootInfo, getObjectAddress, getObjectId, getOutboundReferences, getRetainedHeapSize, getSnapshot, getTechnicalName, getUsedHeapSize, hasCapacity, hasExtractableArray, hasExtractableContents, hasFillRatio, hasSize, isEmpty, resolveValue, size, toString`

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface java.lang.Iterable

`forEach, spliterator`

## Constructor Details

### ExtractedMap

public ExtractedMap(IObject coll, IMapExtractor extractor)

## Method Details

### hasCollisionRatio

public boolean hasCollisionRatio()
Check if collision ratio can be calculated for the map.

Returns:
  true if @`getCollisionRatio()` could be called
See Also:
  - `getCollisionRatio()`

### getCollisionRatio

public Double getCollisionRatio() throws SnapshotException
Get the ratio of collisions inside the map.

Returns:
  the collision ratio as a `Double` between 0.0 and 1.0 inclusive, or possibly null
Throws:
  `SnapshotException` - if there is a problem retrieving data from the snapshot
See Also:
  - `hasCollisionRatio()`

### getByKeyIdentity

public IObject getByKeyIdentity(IObject key) throws SnapshotException
Gets an object from the Map, searching by the key. The keys are matched by IDENTITY, so cannot be used to compare for example Strings

Parameters:
  `key` -
Returns:
  the value object, assuming a match by key identity
Throws:
  `SnapshotException` - if there is a problem retrieving data from the snapshot

### iterator

public Iterator<Map.Entry<IObject,IObject>> iterator()
The entries of the map.