日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OSSortedSet

SortedSet

public interface SortedSet
extends Set

進(jìn)一步提供對(duì)其元素的總排序的 Set。 元素使用它們的 Comparable 排序,或者由通常在排序集創(chuàng)建時(shí)提供的 Comparator 排序。 集合的迭代器將按元素升序遍歷集合。 提供了幾個(gè)額外的操作來(lái)利用排序。 (這個(gè)接口是 SortedMap 的集合類似物。)

插入有序集合的所有元素都必須實(shí)現(xiàn) Comparable 接口(或被指定的比較器接受)。 此外,所有此類元素必須相互比較:e1.compareTo(e2)(或comparator.compare(e1, e2))不得為排序集中的任何元素e1 和e2 拋出ClassCastException。 嘗試違反此限制將導(dǎo)致有問(wèn)題的方法或構(gòu)造函數(shù)調(diào)用拋出 ClassCastException。

請(qǐng)注意,如果有序集合要正確實(shí)現(xiàn) Set 接口,則由有序集合維護(hù)的排序(無(wú)論是否提供顯式比較器)必須與 equals 一致。這是因?yàn)?Set 接口是根據(jù)等于操作定義的,但排序集使用其 compareTo(或比較)方法執(zhí)行所有元素比較 ,因此從排序集的角度來(lái)看,此方法認(rèn)為相等的兩個(gè)元素是相等的。 一個(gè)有序集合的行為是明確定義的,即使它的排序與equals不一致; 它只是不遵守 Set 接口的一般約定。

所有通用排序集實(shí)現(xiàn)類都應(yīng)提供四個(gè)“標(biāo)準(zhǔn)”構(gòu)造函數(shù): 1) 一個(gè) void(無(wú)參數(shù))構(gòu)造函數(shù),它創(chuàng)建一個(gè)空排序集,根據(jù)其元素的自然順序排序。 2) 具有 Comparator 類型的單個(gè)參數(shù)的構(gòu)造函數(shù),它創(chuàng)建一個(gè)空的排序集,根據(jù)指定的比較器排序。 3) 一個(gè)具有單個(gè) Collection 類型參數(shù)的構(gòu)造函數(shù),它創(chuàng)建一個(gè)新的排序集,其元素與其參數(shù)相同,并根據(jù)元素的自然順序進(jìn)行排序。 4) 具有類型為 SortedSet 的單個(gè)參數(shù)的構(gòu)造函數(shù),它創(chuàng)建一個(gè)具有與輸入排序集相同元素和相同順序的新排序集。 無(wú)法強(qiáng)制執(zhí)行此建議,因?yàn)榻涌诓荒馨瑯?gòu)造函數(shù)。

注意:一些方法返回具有受限范圍的子集。 這樣的范圍是半開(kāi)的,也就是說(shuō),它們包括它們的低端點(diǎn)但不包括它們的高端點(diǎn)(如果適用)。 如果您需要一個(gè)封閉范圍(包括兩個(gè)端點(diǎn)),并且元素類型允許計(jì)算給定值的后繼值,則只需請(qǐng)求從 lowEndpoint 到后繼值(highEndpoint)的子范圍。 例如,假設(shè) s 是一組已排序的字符串。 下面的成語(yǔ)獲得了一個(gè)視圖,該視圖包含 s 中從低到高的所有字符串,包括:

   SortedSet sub = s.subSet(low, high+"\0");

類似的技術(shù)可用于生成開(kāi)放范圍(不包含端點(diǎn))。 下面的語(yǔ)句獲得了一個(gè)視圖,該視圖包含了 s 中從低到高的所有字符串,排他性的:

   SortedSet sub = s.subSet(low+"\0", high);

此接口是 Java 集合框架的成員。

方法總結(jié)

修飾符和類型 方法 描述
Comparatorcomparator()返回用于對(duì)該 set 中的元素進(jìn)行排序的比較器,如果此 set 使用其元素的 Comparable,則返回 null。
Efirst()返回此集合中當(dāng)前的第一個(gè)(最低)元素。
SortedSetEheadSet(E toElement)返回此集合中元素嚴(yán)格小于 toElement 的部分的視圖。
Elast()返回此集合中當(dāng)前的最后一個(gè)(最高)元素。
default SpliteratorEspliterator()在此排序集中的元素上創(chuàng)建一個(gè) Spliterator。
SortedSetEsubSet(E fromElement, E toElement)返回此集合部分的視圖,其元素范圍從 fromElement(包括)到 toElement(不包括)。
SortedSetEtailSet(E fromElement)返回此集合中元素大于或等于 fromElement 的部分的視圖。
從接口 java.util.Collection 繼承的方法
parallelStream, removeIf, stream
從接口 java.lang.Iterable 繼承的方法
forEach
從接口 java.util.Set 繼承的方法
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray

方法詳情

comparator

Comparator comparator()

返回用于對(duì)該 set 中的元素進(jìn)行排序的比較器,如果此 set 使用其元素的 Comparable,則返回 null。

返回:

用于對(duì)該集合中的元素進(jìn)行排序的比較器,如果此集合使用其元素的自然排序,則為 null

subSet

SortedSetE subSet(E fromElement, E toElement)

返回此集合部分的視圖,其元素范圍從 fromElement(包括)到 toElement(不包括)。 (如果 fromElement 和 toElement 相等,則返回的集合為空。)返回的集合由該集合支持,因此返回集合中的更改會(huì)反映在該集合中,反之亦然。 返回的集合支持該集合支持的所有可選集合操作。

返回的集合將在嘗試插入超出其范圍的元素時(shí)拋出 IllegalArgumentException。

參數(shù):

參數(shù)名稱 參數(shù)描述
fromElement返回集的低端點(diǎn)(包括)
toElement返回集的高端點(diǎn)(不包括)

返回:

此集合的一部分的視圖,其元素范圍從 fromElement(包括)到 toElement(不包括)

Throws:

Throw名稱 Throw描述
ClassCastException如果 fromElement 和 toElement 不能使用該集合的比較器相互比較(或者,如果該集合沒(méi)有比較器,則使用自然排序)。 如果 fromElement 或 toElement 無(wú)法與集合中當(dāng)前的元素進(jìn)行比較,則實(shí)現(xiàn)可以但不是必須拋出此異常。
NullPointerException如果 fromElement 或 toElement 為 null 并且此集合不允許 null 元素
IllegalArgumentException如果 fromElement 大于 toElement; 或者如果這個(gè)集合本身有一個(gè)受限制的范圍,并且 fromElement 或 toElement 位于范圍的范圍之外

headSet

SortedSetE headSet(E toElement)

返回此集合中元素嚴(yán)格小于 toElement 的部分的視圖。 返回的集合由該集合支持,因此返回集合中的更改會(huì)反映在該集合中,反之亦然。 返回的集合支持該集合支持的所有可選集合操作。

返回的集合將在嘗試插入超出其范圍的元素時(shí)拋出 IllegalArgumentException。

參數(shù):

參數(shù)名稱 參數(shù)描述
toElement返回集的高端點(diǎn)(不包括)

返回:

此集合中元素嚴(yán)格小于 toElement 的部分的視圖

Throws:

Throw名稱 Throw描述
ClassCastException如果 toElement 與該集合的比較器不兼容(或者,如果該集合沒(méi)有比較器,如果 toElement 沒(méi)有實(shí)現(xiàn) Comparable)。 如果 toElement 無(wú)法與集合中的當(dāng)前元素進(jìn)行比較,則實(shí)現(xiàn)可以但不是必須拋出此異常。
NullPointerException如果 toElement 為 null 并且此集合不允許 null 元素
IllegalArgumentException如果這個(gè)集合本身有一個(gè)限制范圍,并且 toElement 位于范圍的范圍之外

tailSet

SortedSetE tailSet(E fromElement)

返回此集合中元素大于或等于 fromElement 的部分的視圖。 返回的集合由該集合支持,因此返回集合中的更改會(huì)反映在該集合中,反之亦然。 返回的集合支持該集合支持的所有可選集合操作。

返回的集合將在嘗試插入超出其范圍的元素時(shí)拋出 IllegalArgumentException。

參數(shù):

參數(shù)名稱 參數(shù)描述
fromElement返回集的低端點(diǎn)(包括)

返回:

此集合中元素大于或等于 fromElement 的部分的視圖

Throws:

Throw名稱 Throw描述
ClassCastException如果 fromElement 與這個(gè)集合的比較器不兼容(或者,如果集合沒(méi)有比較器,如果 fromElement 沒(méi)有實(shí)現(xiàn) Comparable)。 如果無(wú)法將 fromElement 與當(dāng)前集合中的元素進(jìn)行比較,則實(shí)現(xiàn)可以但不是必須拋出此異常。
NullPointerException如果 fromElement 為 null 并且此集合不允許 null 元素
IllegalArgumentException如果此集合本身具有受限范圍,并且 fromElement 位于范圍的范圍之外

first

E first()

返回此集合中當(dāng)前的第一個(gè)(最低)元素。

返回:

當(dāng)前在此集合中的第一個(gè)(最低)元素

Throws:

Throw名稱 Throw描述
NoSuchElementException如果這個(gè)集合是空的

last

E last()

返回此集合中當(dāng)前的最后一個(gè)(最高)元素。

返回:

當(dāng)前在此集合中的最后一個(gè)(最高)元素

Throws:

Throw名稱 Throw描述
NoSuchElementException如果這個(gè)集合是空的

spliterator

default SpliteratorE spliterator()

在此排序集中的元素上創(chuàng)建一個(gè) Spliterator。

Spliterator 報(bào)告 Spliterator#DISTINCT、Spliterator#SORTED 和 Spliterator#ORDERED。 實(shí)施應(yīng)記錄附加特征值的報(bào)告。

如果排序集的比較器為空,則拆分器的比較器必須為空。 否則,拆分器的比較器必須與排序集的比較器相同或施加相同的總排序。

指定者:

接口 CollectionE 中的分離器

指定者:

接口 IterableE 中的分離器

指定者:

接口 SetE 中的分離器

返回:

在此排序集中的元素上的 Spliterator


當(dāng)前題目:創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OSSortedSet
瀏覽路徑:http://www.dlmjj.cn/article/dpojjje.html