Share via


IQueue 인터페이스

정의

처리하기 전에 요소를 보유하도록 설계된 컬렉션입니다.

[Android.Runtime.Register("java/util/Queue", "", "Java.Util.IQueueInvoker")]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public interface IQueue : IDisposable, Java.Interop.IJavaPeerable, Java.Util.ICollection
[<Android.Runtime.Register("java/util/Queue", "", "Java.Util.IQueueInvoker")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type IQueue = interface
    interface ICollection
    interface IIterable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
파생
특성
구현

설명

처리하기 전에 요소를 보유하도록 설계된 컬렉션입니다. 큐는 기본 Collection 작업 외에도 추가 삽입, 추출 및 검사 작업을 제공합니다. 이러한 각 메서드는 두 가지 형식으로 존재합니다. 하나는 작업이 실패하면 예외를 throw하고, 다른 메서드는 작업에 따라 특수 값( null 또는 false)을 반환합니다. 삽입 작업의 후자 형식은 용량 제한 Queue 구현에 사용하도록 특별히 디자인되었습니다. 대부분의 구현에서는 삽입 작업이 실패할 수 없습니다.

<table class="striped">캡션Summary of Queue methods</캡션<>thead><tr tr td<><>/td><th scope="col" style="font-weight:normal; font-style:italic">throw exception</th th<>scope="col" style="font-weight:normal; font-style:italic">Returns special value</th></tr/<>>< thead><tbody><tr><th scope="row">Insert</th<>td#add(Object) add(e)></td></td>><#offer(Object) offer(e)</tr tr<><>th scope="row">Remove</th<>td><#remove() remove()/td/td><#poll() poll()<>/td<>/tr tr<>><th scope="row"Examine></일><td>#element() element()</td td>><#peek() peek()</td></tr></tbody></table>

큐는 일반적으로 FIFO(선입선입) 방식으로 요소를 정렬해야 하는 것은 아닙니다. 예외 중에는 제공된 비교자에 따라 요소를 정렬하는 우선 순위 큐 또는 요소의 자연 순서 지정, LIFO(마지막 우선 출력) 요소를 정렬하는 LIFO 큐(또는 스택)가 있습니다. 어떤 순서를 사용하든 큐의 <em>head</em>은 또는 #poll()에 대한 호출 #remove() 로 제거되는 요소입니다. FIFO 큐에서 모든 새 요소가 큐의 <em>tail</em> 에 삽입됩니다. 다른 종류의 큐는 다른 배치 규칙을 사용할 수 있습니다. 모든 Queue 구현은 순서 지정 속성을 지정해야 합니다.

메서드는 #offer offer 가능하면 요소를 삽입하고, 그렇지 않으면 를 반환합니다 false. 이는 선택되지 않은 예외를 java.util.Collection#add Collection.add throw해야만 요소를 추가하지 못할 수 있는 메서드와 다릅니다. 메서드는 offer 예를 들어 고정 용량(또는 &따옴표)에서 예외적으로 발생하는 것이 아니라 오류가 정상일 때 사용하도록 설계되었습니다. 바인딩된&따옴표;) 큐.

#poll() 메서드는 #remove() 큐의 헤드를 제거하고 반환합니다. 정확히 어떤 요소가 큐에서 제거되었는지는 구현마다 다른 큐 순서 정책의 함수입니다. 및 메서드는 remove() 큐가 비어 있을 때만 동작이 다릅니다. 메서드는 remove() 예외를 throw하고 메서드는 를 poll() 반환null합니다.poll()

#peek() 메서드는 #element() 큐의 헤드를 반환하지만 제거하지는 않습니다.

인터페이스는 Queue 동시 프로그래밍에서 일반적인 차단 큐 메서드를 정의하지 않습니다. 요소가 나타나거나 공간이 사용 가능해질 때까지 기다리는 이러한 메서드는 인터페이스에 java.util.concurrent.BlockingQueue 정의되어 이 인터페이스를 확장합니다.

Queue 구현은 일반적으로 요소 삽입 null 을 허용하지 않지만 와 같은 LinkedList일부 구현은 의 null삽입을 금지하지 않습니다. 이를 허용하는 null 구현에서도 큐에 요소가 없음을 Queuenull 나타내기 위해 메서드에서 특수 반환 값 poll 으로 사용되므로 에 삽입해서는 안 됩니다.

Queue 구현은 일반적으로 메서드 equalshashCode 의 요소 기반 버전을 정의하지 않고 대신 클래스 Object에서 ID 기반 버전을 상속합니다. 요소 기반 같음이 항상 동일한 요소가 있지만 순서가 다른 속성이 있는 큐에 대해 잘 정의되지 않기 때문입니다.

1.5에 추가되었습니다.

에 대한 Java 설명서입니다 java.util.Queue.

이 페이지의 일부는 만들고 공유하며 에 설명된 조건에 따라 사용되는 작업을 기반으로 수정됩니다.

속성

Handle

기본 Android 개체의 JNI 값을 가져옵니다.

(다음에서 상속됨 IJavaObject)
IsEmpty

요소가 없으면 Collection 를 반환합니다.

(다음에서 상속됨 ICollection)
JniIdentityHashCode

래핑된 instance 값을 반환 java.lang.System.identityHashCode() 합니다.

(다음에서 상속됨 IJavaPeerable)
JniManagedPeerState

관리되는 피어의 상태입니다.

(다음에서 상속됨 IJavaPeerable)
JniPeerMembers

멤버 액세스 및 호출 지원.

(다음에서 상속됨 IJavaPeerable)
PeerReference

JniObjectReference 래핑된 Java 개체 instance 의 를 반환합니다.

(다음에서 상속됨 IJavaPeerable)

메서드

Add(Object)

용량 제한을 위반하지 않고 즉시 수행할 수 있는 경우 지정된 요소를 이 큐에 삽입하고 true , 성공 시 반환하고, 현재 사용할 수 있는 공간이 없는 경우 을 IllegalStateException throw합니다.

AddAll(ICollection)

지정된 컬렉션의 모든 요소를 이 컬렉션에 추가합니다(선택적 작업).

(다음에서 상속됨 ICollection)
Clear()

이 컬렉션에서 모든 요소를 제거합니다(선택적 작업).

(다음에서 상속됨 ICollection)
Contains(Object)

이 컬렉션에 지정된 요소가 포함되어 있으면 를 반환 true 합니다.

(다음에서 상속됨 ICollection)
ContainsAll(ICollection)

이 컬렉션에 지정된 컬렉션의 모든 요소가 포함되어 있으면 를 반환 true 합니다.

(다음에서 상속됨 ICollection)
Disposed()

instance 삭제될 때 호출됩니다.

(다음에서 상속됨 IJavaPeerable)
DisposeUnlessReferenced()

이 instance 대한 미해결 참조가 없으면 를 호출Dispose()합니다. 그렇지 않으면 아무 작업도 수행하지 않습니다.

(다음에서 상속됨 IJavaPeerable)
Element()

이 큐의 헤드를 검색하지만 제거하지는 않습니다.

Equals(Object)

지정된 개체를 이 컬렉션과 같음으로 비교합니다.

(다음에서 상속됨 ICollection)
Finalized()

instance 완료될 때 호출됩니다.

(다음에서 상속됨 IJavaPeerable)
ForEach(IConsumer)

모든 요소가 처리되거나 작업이 예외를 Iterable throw할 때까지 의 각 요소에 대해 지정된 작업을 수행합니다.

(다음에서 상속됨 IIterable)
GetHashCode()

이 컬렉션의 해시 코드 값을 반환합니다.

(다음에서 상속됨 ICollection)
Iterator()

이 컬렉션의 요소에 대한 반복기를 반환합니다.

(다음에서 상속됨 ICollection)
Offer(Object)

용량 제한을 위반하지 않고 즉시 수행할 수 있는 경우 지정된 요소를 이 큐에 삽입합니다.

Peek()

이 큐의 헤드를 검색하지만 제거하지는 않으며 이 큐가 비어 있으면 를 반환 null 합니다.

Poll()

이 큐의 헤드를 검색 및 제거하거나 이 큐가 비어 있으면 를 반환합니다 null .

Remove()

이 큐의 헤드를 검색하고 제거합니다.

Remove(Object)

이 컬렉션에서 지정된 요소의 단일 instance 제거합니다(선택적 작업).

(다음에서 상속됨 ICollection)
RemoveAll(ICollection)

지정된 컬렉션에도 포함된 이 컬렉션의 모든 요소를 제거합니다(선택적 작업).

(다음에서 상속됨 ICollection)
RemoveIf(IPredicate)

지정된 조건자를 충족하는 이 컬렉션의 모든 요소를 제거합니다.

(다음에서 상속됨 ICollection)
RetainAll(ICollection)

지정된 컬렉션에 포함된 이 컬렉션의 요소만 유지합니다(선택적 작업).

(다음에서 상속됨 ICollection)
SetJniIdentityHashCode(Int32)

에서 반환 JniIdentityHashCode된 값을 설정합니다.

(다음에서 상속됨 IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

처리하기 전에 요소를 보유하도록 설계된 컬렉션입니다.

(다음에서 상속됨 IJavaPeerable)
SetPeerReference(JniObjectReference)

에서 반환 PeerReference된 값을 설정합니다.

(다음에서 상속됨 IJavaPeerable)
Size()

이 컬렉션의 요소 수를 반환합니다.

(다음에서 상속됨 ICollection)
Spliterator()

Iterable에서 Spliterator 설명하는 요소 위에 을 만듭니다.

(다음에서 상속됨 IIterable)
ToArray()

이 컬렉션의 모든 요소가 포함된 배열을 반환합니다.

(다음에서 상속됨 ICollection)
ToArray(IIntFunction)

제공된 함수를 사용하여 반환된 generator 배열을 할당하여 이 컬렉션의 모든 요소가 포함된 배열을 반환합니다.

(다음에서 상속됨 ICollection)
ToArray(Object[])

이 컬렉션의 모든 요소를 포함하는 배열을 반환합니다. 반환된 배열의 런타임 형식은 지정된 배열의 런타임 형식입니다.

(다음에서 상속됨 ICollection)
UnregisterFromRuntime()

런타임이 이후 Java.Interop.JniRuntime+JniValueManager.PeekValue 호출에서 반환되지 않도록 이 instance 등록을 취소합니다.

(다음에서 상속됨 IJavaPeerable)

명시적 인터페이스 구현

IIterable.Spliterator()

Spliterator 이 컬렉션의 요소 위에 을 만듭니다.

(다음에서 상속됨 ICollection)

확장 메서드

JavaCast<TResult>(IJavaObject)

Android 런타임 확인 형식 변환을 수행합니다.

JavaCast<TResult>(IJavaObject)

처리하기 전에 요소를 보유하도록 설계된 컬렉션입니다.

GetJniTypeName(IJavaPeerable)

처리하기 전에 요소를 보유하도록 설계된 컬렉션입니다.

ToEnumerable(IIterable)

처리하기 전에 요소를 보유하도록 설계된 컬렉션입니다.

ToEnumerable<T>(IIterable)

처리하기 전에 요소를 보유하도록 설계된 컬렉션입니다.

적용 대상