클래스 RealmResults
이 페이지의 내용
io.realm
이 클래스는 주어진 Realm에 대한 RealmQuery 의 모든 일치 항목을 보유합니다. 객체는 Realm에서 RealmResults 목록으로 복사되지 않고 대신 RealmResult에서 참고될 뿐입니다. 이렇게 하면 메모리가 절약되고 속도가 빨라집니다.
RealmResults는 라이브 뷰이므로 이벤트 루프 스레드에 있는 경우 트랜잭션이 커밋된 후 쿼리 결과를 자동으로 업데이트합니다. 이벤트 루프가 아닌 스레드에서는 결과를 업데이트하기 위해 Realm.refresh() 를 호출해야 합니다.
RealmResults 목록에서 RealmObjects 업데이트는 트랜잭션 내에서 수행해야 하며 수정된 객체는 트랜잭션이 커밋되는 동안 Realm 파일에 유지됩니다.
RealmResults 객체는 서로 다른 스레드 간에 전달할 수 없습니다.
RealmResults는 객체가 없는 경우를 제외하고는 절대 null
이(가) 되지 않습니다. 항상 RealmResults.size() 메서드를 사용하여 RealmResults가 비어 있는지 확인합니다.
RealmResults가 RealmList.where() 를 통해 RealmList에 빌드되는 경우 , 소스 RealmList가 삭제되면 비어 있게 됩니다.
RealmResults 는 Integer.MAX_VALUE
보다 더 많은 요소를 포함할 수 있습니다. 이 경우 처음 Integer.MAX_VALUE
요소에만 액세스할 수 있습니다.
메서드 요약
수정자 및 유형 | 메서드 및 설명 |
---|---|
public void | ) 이 RealmResults 에 변경 리스너를 추가합니다. |
public void | 이 RealmResults 에 변경 리스너를 추가합니다. |
public <any> | 이 RealmResults의 변경 사항을 모니터링하는 Rx Observable을 반환합니다. |
public <any> | asFlowable () 이 RealmResults의 변경 사항을 모니터링하는 Rx Flowable을 반환합니다. |
공개 string | asJSON () RealmQuery 의 일치 항목에 대한 JSON 표현을 반환합니다. |
공개 RealmResults | freeze () |
공개 부울 | isFrozen () |
공개 부울 | isLoaded () 결과가 아직 로드되지 않은 경우 |
공개 부울 | load () 비동기 쿼리를 차단합니다. |
public void | 모든 사용자 정의 변경 수신기를 제거합니다. |
public void | ) 지정된 변경 리스너를 제거합니다. |
public void | 지정된 변경 리스너를 제거합니다. |
public void | |
public void | collection의 모든 객체에서 지정된 필드의 |
public void | |
public void | |
public void | collection의 모든 객체에서 지정된 필드의 |
public void | |
public void | |
public void | |
public void | 이 collection에 있는 모든 객체의 지정된 필드에 있는 RealmList를 대체합니다. |
public void | |
public void | |
public void | collection에 있는 모든 객체에서 지정된 필드에 있는 다른 객체에 대한 참고를 설정합니다. |
public void | collection의 모든 객체에서 지정된 필드의 |
public void | |
public void | |
public void | |
public void | |
공개 RealmResults | |
공개 RealmQuery | where () 이 collection에서 특정 objects를 쿼리하는 데 사용할 수 있는 RealmQuery 를 반환합니다. |
상속된 메서드
클래스 java.lang.Object 에서 상속된 메서드 :
getClass
,hashCode
,equals
,clone
,toString
,notify
,notifyAll
,wait
,wait
,wait
,finalize
클래스 java.util.AbstractCollection 에서 상속된 메서드 :
iterator
,size
,isEmpty
,contains
,toArray
,toArray
,add
,remove
,containsAll
,addAll
,removeAll
,retainAll
,clear
,toString
클래스 java.util.AbstractList 에서 상속된 메서드 :
add
,get
,set
,add
,remove
,indexOf
,lastIndexOf
,clear
,addAll
,iterator
,listIterator
,listIterator
,subList
,equals
,hashCode
,removeRange
io.realm.OrderedRealmCollectionImp 클래스에서 상속된 메서드:
isValid
,isManaged
,contains
,get
,first
,first
,last
,last
,deleteFromRealm
,deleteAllFromRealm
,iterator
,listIterator
,listIterator
,sort
,sort
,sort
,sort
,size
,min
,minDate
,max
,maxDate
,sum
,average
,remove
,remove
,removeAll
,set
,retainAll
,deleteLastFromRealm
,deleteFirstFromRealm
,clear
,add
,add
,addAll
,addAll
,createSnapshot
,getRealm
,getCollectionOperator
메서드 세부 정보
addChangeListener
public void addChangeListener ( ) | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
이 RealmResults 에 변경 리스너를 추가합니다. 변경 리스너를 등록해도 기본 RealmResults가 가비지 수집되는 것을 방지할 수는 없습니다. RealmResults가 가비지 컬렉션되면 변경 리스너 트리거가 중지됩니다. 이를 방지하려면 클래스 변수와 같이 적절한 길이로 강력한 참고를 유지하세요.
매개변수
스로우
|
이 RealmResults 에 변경 리스너를 추가합니다. 변경 리스너를 등록해도 기본 RealmResults가 가비지 수집되는 것을 방지할 수는 없습니다. RealmResults가 가비지 컬렉션되면 변경 리스너 트리거가 중지됩니다. 이를 방지하려면 클래스 변수와 같이 적절한 길이로 강력한 참고를 유지하세요.
매개변수
스로우
|
asChangesetObservable
public <any> asChangesetObservable () | |||||
---|---|---|---|---|---|
이 RealmResults의 변경 사항을 모니터링하는 Rx Observable을 반환합니다. 구독 시 현재 RealmResults를 내보냅니다. RealmResult가 업데이트될 때마다 RealmResults와 OrderedCollectionChangeSet 로 구성된 쌍이 전송됩니다. RealmResults가 처음 방출될 때 변경 세트는 RealmResults가 업데이트될 때마다 RealmResults가 계속 방출되며 Realm Observable에서 방출된 항목은 동결됩니다(freeze() 참조) . 즉, 변경할 수 없으며 모든 스레드에서 읽을 수 있습니다. Realm Observable은 항상 라이브 Realm을 보유한 스레드에서 항목을 방출합니다. 즉, 추가 처리를 수행해야 하는 경우 계산 스케줄러에서 값을 관찰하는 것이 좋습니다.
반환
스로우
|
asFlowable
public <any> asFlowable () | |||||||||
---|---|---|---|---|---|---|---|---|---|
이 RealmResults의 변경 사항을 모니터링하는 Rx Flowable을 반환합니다. 구독 시 현재 RealmResults를 내보냅니다. RealmResults가 업데이트될 때마다 RealmResults가 계속 방출되며 Realm Flowables에서 방출된 항목은 동결됩니다(freeze() 참조) . 즉, 변경할 수 없으며 모든 스레드에서 읽을 수 있습니다. Realm Flowable은 항상 라이브 RealmResults를 보유하는 스레드에서 항목을 방출합니다. 즉, 추가 처리를 수행해야 하는 경우 계산 스케줄러에서 값을 관찰하는 것이 좋습니다.
반환
스로우
|
asJSON
RealmQuery 의 일치 항목에 대한 JSON 표현을 반환합니다. 주기는 행 인덱스로 반환됩니다. 이 메서드는 데이터를 검사하는 데 사용되는 도우미 메서드이며, 디버깅 목적으로 이 메서드가 큰 문자열을 가져올 경우 OutOfMemory 오류가 발생할 수 있습니다. 반환 결과 RealmQuery 의 항목이 포함된 JSON 배열의 문자열 표현입니다. |
동결
public RealmResults freeze () |
---|
IsFrozen
public boolean isFrozen () |
---|
isLoaded
public boolean isLoaded () |
---|
결과가 아직 로드되지 않은 경우 반환
|
로드
public boolean load () |
---|
비동기 쿼리를 차단합니다. 이렇게 하면 query가 완료되면 등록된 모든 RealmChangeListener 도 trigger됩니다. 반환
|
모든 변경 리스너 제거
public void removeAllChangeListeners () |
---|
모든 사용자 정의 변경 수신기를 제거합니다. 스로우 |
removeChangeListener
public void removeChangeListener ( ) |
---|
setBlob
collection의 모든 객체에서 지정된 필드의 이진 값을 설정합니다. 매개변수
스로우
|
setBoolean
setByte
collection의 모든 객체에서 지정된 필드의 매개변수
스로우
|
setDate
collection의 모든 객체에서 지정된 필드의 매개변수
스로우
|
setDecimal128
collection의 모든 객체에서 지정된 필드의 매개변수
스로우
|
setDouble
collection의 모든 객체에서 지정된 필드의 매개변수
스로우
|
setFloat
setInt
setList
이 collection에 있는 모든 객체의 지정된 필드에 있는 RealmList를 대체합니다. 매개변수
스로우 |
setLong
setNull
collection의 모든 객체에서 지정된 필드에 대해 값을 매개변수
스로우
|
setObject
setObjectId
collection의 모든 객체에서 지정된 필드의 매개변수
스로우
|
setShot
setString
collection의 모든 객체에서 지정된 필드의 매개변수
스로우
|
setUUID
collection의 모든 객체에서 지정된 필드의 매개변수
스로우
|
setValue
쿼리 결과 내의 모든 객체에서 이 메서드는 setInt(string, int) 와 같은 형식화된 세터를 사용하면 이 메서드를 사용하는 것보다 빠릅니다. 매개변수
스로우 |
sort
제공된 필드와 정렬 순서에 따라 collection을 정렬합니다. 반환 새로 정렬된 RealmResults 가 생성되어 반환됩니다. 원본 컬렉션은 변경되지 않습니다. 재정의
|
위치
public RealmQuery where () |
---|