ISortedSet 接口
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
该元素 Set
进一 步提供其元素的总排序 。
[Android.Runtime.Register("java/util/SortedSet", "", "Java.Util.ISortedSetInvoker")]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public interface ISortedSet : IDisposable, Java.Interop.IJavaPeerable, Java.Util.ISet
[<Android.Runtime.Register("java/util/SortedSet", "", "Java.Util.ISortedSetInvoker")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type ISortedSet = interface
interface ISet
interface ICollection
interface IIterable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 派生
- 属性
- 实现
注解
该元素 Set
进一 步提供其元素的总排序 。 元素使用可比自然排序进行排序,或通过 Comparator
通常在排序集创建时提供。 集的迭代器将按升序遍历集。 提供了几个额外的操作来利用排序。 (此接口是 SortedMap
.)
插入到排序集中的所有元素都必须实现 Comparable
接口(或由指定的比较器接受)。 此外,所有此类元素必须相互比较: e1.compareTo(e2)
(或comparator.compare(e1, e2)
)不得为任何元素e1
和e2
排序集中引发。ClassCastException
尝试违反此限制将导致有问题的方法或构造函数调用引发 。ClassCastException
请注意,如果排序集正确实现Set
接口,则排序集所维护的排序(是否提供显式比较器)必须与相等一致。 (请参阅Comparable
接口或Comparator
接口,获取与相等的精确定义。这是因为Set
接口在操作方面equals
进行了定义,但排序集使用其 compareTo
(或compare
) 方法执行所有元素比较,因此此方法认为相等的两个元素从排序集的角度相等。 即使排序与相等不一致,排序集的行为也定义良好;它只是不服从接口的Set
一般协定。
所有常规用途排序集实现类都应提供四个“标准”构造函数:1)void(无参数)构造函数,该构造函数根据元素的自然顺序创建一个空排序集。 2) 具有一个类型 Comparator
参数的构造函数,它根据指定的比较器创建一个按排序的空排序集。 3) 具有一个类型 Collection
参数的构造函数,它创建一个与参数相同的元素的新排序集,根据元素的自然顺序进行排序。 4) 具有一个类型 SortedSet
参数的构造函数,该构造函数使用与输入排序集相同的元素和相同的顺序创建一个新的排序集。 无法强制实施此建议,因为接口不能包含构造函数。
注意:多个方法返回具有受限范围的子集。 此类范围是 半打开的,即它们包括其低终结点,但不包括其高终结点(如果适用)。 如果需要封闭范围(包括两个终结点),并且元素类型允许计算给定值的后续任务,只需从中lowEndpoint
请求子范围即可successor(highEndpoint)
。 例如,假设 s
这是一组排序的字符串。 以下成语获取一个视图,其中包含从到high
外的所有字符串s
(包括):low
SortedSet<String> sub = s.subSet(low, high+"\0");
类似的技术可用于生成开放范围(不包含两个终结点)。 以下成语获取一个视图,该视图包含从中到high
外low
的所有字符串s
:
SortedSet<String> sub = s.subSet(low+"\0", high);
此接口是 Java 集合框架的成员。
已在 1.2 中添加。
适用于 . 的 java.util.SortedSet
Java 文档
本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。
属性
Handle |
获取基础 Android 对象的 JNI 值。 (继承自 IJavaObject) |
IsEmpty |
如果此集没有元素,则返回 true。 (继承自 ISet) |
JniIdentityHashCode |
返回包装实例的值 |
JniManagedPeerState |
托管对等方的状态。 (继承自 IJavaPeerable) |
JniPeerMembers |
成员访问和调用支持。 (继承自 IJavaPeerable) |
PeerReference |
返回 JniObjectReference 包装的 Java 对象实例。 (继承自 IJavaPeerable) |
方法
Add(Object) |
如果指定的元素尚不存在(可选操作),请将指定的元素添加到此集。 (继承自 ISet) |
AddAll(ICollection) |
如果指定集合中的所有元素尚不存在(可选操作),则将其添加到此集合中。 (继承自 ISet) |
Clear() |
从此集中删除所有元素(可选操作)。 (继承自 ISet) |
Comparator() |
返回用于对此集中的元素进行排序的比较器,或者 |
Contains(Object) |
返回 |
ContainsAll(ICollection) |
返回 |
Disposed() |
在释放实例时调用。 (继承自 IJavaPeerable) |
DisposeUnlessReferenced() |
如果没有对此实例的未完成引用,则调用 |
Equals(Object) |
将指定的对象与此集进行比较,以便相等。 (继承自 ISet) |
Finalized() |
在实例完成时调用。 (继承自 IJavaPeerable) |
First() |
返回此集中当前第一个(最低)元素。 |
ForEach(IConsumer) |
对每个元素执行给定操作,直到处理完所有元素 |
GetHashCode() |
返回此集的哈希代码值。 (继承自 ISet) |
HeadSet(Object) |
返回此集部分的视图,其元素严格小于 |
Iterator() |
返回此集中元素的迭代器。 (继承自 ISet) |
Last() |
返回当前在此集中的最后一个(最高)元素。 |
Remove(Object) |
如果存在指定元素(可选操作),则从此集中删除指定元素。 (继承自 ISet) |
RemoveAll(ICollection) |
从此集合中移除其包含在指定集合中的所有元素(可选操作)。 (继承自 ISet) |
RemoveIf(IPredicate) |
删除满足给定谓词的此集合的所有元素。 (继承自 ICollection) |
RetainAll(ICollection) |
仅保留指定集合中包含的此集中的元素(可选操作)。 (继承自 ISet) |
SetJniIdentityHashCode(Int32) |
设置由 |
SetJniManagedPeerState(JniManagedPeerStates) |
该元素 |
SetPeerReference(JniObjectReference) |
设置由 |
Size() |
返回此集中的元素数(其基数)。 (继承自 ISet) |
Spliterator() |
|
SubSet(Object, Object) |
返回此集部分的视图,其元素范围从 |
TailSet(Object) |
返回此集的一部分的视图,其元素大于或等于 |
ToArray() |
返回一个数组,其中包含此集中的所有元素。 (继承自 ISet) |
ToArray(IIntFunction) |
返回包含此集合中的所有元素的数组,该数组使用提供的 |
ToArray(Object[]) |
返回一个数组,其中包含此集中的所有元素;返回的数组的运行时类型是指定数组的运行时类型。 (继承自 ISet) |
UnregisterFromRuntime() |
取消注册此实例,以便运行时不会从将来 Java.Interop.JniRuntime+JniValueManager.PeekValue 的调用中返回它。 (继承自 IJavaPeerable) |
显式接口实现
IIterable.Spliterator() |
在此排序集中创建一个 |
扩展方法
JavaCast<TResult>(IJavaObject) |
执行 Android 运行时检查的类型转换。 |
JavaCast<TResult>(IJavaObject) |
该元素 |
GetJniTypeName(IJavaPeerable) |
该元素 |
ToEnumerable(IIterable) |
该元素 |
ToEnumerable<T>(IIterable) |
该元素 |