Docs Menu
Docs Home
/ /
Atlas Device SDK
/ / /

클래스 RealmMap

이 페이지의 내용

  • io.realm
  • 메서드 요약
  • 상속된 메서드
  • 메서드 세부 정보
  • addChangeListener
  • 지우기
  • containsKey
  • containsValue
  • entrySet
  • 동결
  • get
  • isEmpty
  • IsFrozen
  • isManaged
  • isValid
  • keySet
  • put
  • putAll
  • 제거
  • 모든 변경 리스너 제거
  • removeChangeListener
  • size
  • values
java.lang.Object
io.realm.RealmMap

구현된 인터페이스:

  • java.util.Map

RealmMap은 키를 값에 매핑하는 데 사용됩니다. RealmMap은 중복 키를 포함할 수 없으며 각 키는 최대 하나의 값에 매핑할 수 있습니다. RealmMap은 null 키를 가질 수 없지만 null 값은 가질 수 있습니다.

RealmList와 마찬가지로 RealmDictionary 는 managed 모드와 비관리 모드에서 작동할 수 있습니다. managed 모드 에서 RealmDictionary는 모든 내용을 Realm 내에 유지하는 반면, 비관리 모드 에서는 HashMap 처럼 작동합니다. .

managed RealmDictionaries는 Realm에서만 만들 수 있으며 기본 Realm이 업데이트될 때마다 해당 콘텐츠가 자동으로 업데이트됩니다. managed RealmDictionaries는 RealmObject의 RealmDictionary 필드를 점을 통해서만 액세스할 수 있습니다.

Unmanaged RealmDictionaries는 사용자가 만들 수 있으며 managed RealmObject와 unmanaged RealmObject를 모두 포함할 수 있습니다. 이는 GSON과 같은 JSON 디시리얼라이저 또는 클래스에 값을 삽입하는 다른 프레임워크를 처리할 때 유용합니다. 관리되지 않는 RealmMap은 Realm.copyToRealm(Iterable, ImportFlag...) 메서드를 사용하여 Realm에 추가할 수 있습니다.

수정자 및 유형
메서드 및 설명
public void

RealmMap 에 변경 리스너를 추가합니다.

public void

RealmMap 에 변경 리스너를 추가합니다.

public void
공개 부울
공개 부울
공개 RealmMap
public V
get (
Object key
)
공개 부울
공개 부울
공개 부울
공개 부울
public V
put (
K key,
V value
)
public void
public V
public void

모든 사용자 정의 변경 수신기를 제거합니다.

public void

지정된 변경 리스너를 제거합니다.

public void

지정된 변경 리스너를 제거합니다.

public int
size ()

공개 컬렉션

RealmMap 에 변경 리스너를 추가합니다.

변경 리스너를 등록해도 기본 RealmMap이 가비지 수집되는 것을 방지할 수는 없습니다. RealmMap이 가비지 수집되면 변경 리스너 트리거가 중지됩니다. 이를 방지하려면 클래스 변수와 같이 적절한 길이로 강력한 참고를 유지하세요.

public class MyActivity extends Activity {
private RealmMap<String, Dog> dogs; // Strong reference to keep listeners alive
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
dogs = realm.where(Person.class).findFirst().getDogs();
dogs.addChangeListener(new RealmChangeListener<RealmMap<String, Dog>>() {
@Override
public void onChange(RealmMap<String, Dog> map) {
// React to change
}
});
}
}

매개변수

  • listener - 알림을 받을 변경 리스너입니다.

스로우

다음도 참조하세요.

RealmMap 에 변경 리스너를 추가합니다.

변경 리스너를 등록해도 기본 RealmMap이 가비지 수집되는 것을 방지할 수는 없습니다. RealmMap이 가비지 수집되면 변경 리스너 트리거가 중지됩니다. 이를 방지하려면 클래스 변수와 같이 적절한 길이로 강력한 참고를 유지하세요.

public class MyActivity extends Activity {
private RealmMap<String, Dog> dogs; // Strong reference to keep listeners alive
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
dogs = realm.where(Person.class).findFirst().getDogs();
dogs.addChangeListener(new MapChangeListener<String, Dog>() {
@Override
public void onChange(RealmMap<String, Dog> map, MapChangeSet<String> changeSet) {
// React to change
}
});
}
}

매개변수

  • listener - 알림을 받을 변경 리스너입니다.

스로우

public void clear ()

public boolean containsKey (
Object key
)
public boolean containsValue (
Object value
)
public Set entrySet ()

public RealmMap freeze ()

public V get (
Object key
)
public boolean isEmpty ()

public boolean isFrozen ()

public boolean isManaged ()

public boolean isValid ()

public Set keySet ()

public V put (
K key,
V value
)
public V remove (
Object key
)

모든 사용자 정의 변경 수신기를 제거합니다.

스로우

  • 불법적인 상태 예외 - Looper가 아닌 스레드에서 리스너를 제거하려고 하는 경우.

다음도 참조하세요.

지정된 변경 리스너를 제거합니다.

매개변수

  • listener - 제거할 변경 리스너입니다.

스로우

다음도 참조하세요.

지정된 변경 리스너를 제거합니다.

매개변수

  • listener - 제거할 변경 리스너입니다.

스로우

public int size ()

public Collection values ()

돌아가기

RealmList