Docs Menu

Docs HomeDevelop ApplicationsAtlas Device SDKs

RealmDictionary - Java SDK

On this page

  • Usage
  • Notifications

New in version 10.6.0.

You can use the RealmDictionary data type to manage a collection of unique String keys paired with values. RealmDictionary implements Java's Map interface, so it works just like the built-in HashMap class, except managed RealmDictionary instances persist their contents to a realm. RealmDictionary instances that contain Realm objects store references to those objects. When you delete a Realm object from a realm, any references to that object in a RealmDictionary become null values.

To create a field of type RealmDictionary, define an object property of type RealmDictionary<T>, where T defines the values you would like to store in your RealmDictionary. Currently, RealmDictionary instances can only use keys of type String.

The following table shows which methods you can use to complete common collection tasks with RealmDictionary:

Task
Method
Add an object to a RealmDictionary
put() (or the [] operator in Kotlin)
Add multiple objects to a RealmDictionary
Check if the dictionary contains an specific key
Check if the dictionary contains a specific value

To subscribe to changes to a RealmDictionary, pass a MapChangeListener implementation to the RealmSet.addChangeListener method. Your MapChangeListener implementation must define an onChange() method, which accepts a reference to the changed RealmDictionary and a set of changes as parameters. You can access the keys added to the dictionary as well as the keys removed from the dictionary through the MapChangeSet parameter.

← Counters - Java SDK

On this page