gpt4 book ai didi

java - SortedSet 的元素类型允许计算给定值的后继

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:15:55 25 4
gpt4 key购买 nike

来自 SortedSet文档:

several methods return subsets with restricted ranges. Such ranges are half-open, that is, they include their low endpoint but not their high endpoint (where applicable). If you need a closed range (which includes both endpoints), and the element type allows for calculation of the successor of a given value, merely request the subrange from lowEndpoint to successor(highEndpoint).

你能解释一下什么意思吗

the element type allows for calculation of the successor of a given value

什么类型允许在 Java 中计算后继?

最佳答案

the element type allows for calculation of the successor of a given value

全看排序方式

这意味着,对于元素的排序方法,您可以计算出什么排序值将紧跟在给定值之后,它们之间不可能有任何内容。

来自文档:

For example, suppose that s is a sorted set of strings. The following idiom obtains a view containing all of the strings in s from low to high, inclusive: SortedSet<String> sub = s.subSet(low, high+"\0");

对于字符串: (自然排序) high + "\0"high 的继承者

对于整数: (自然排序) high + 1high 的继承者. 但是如果您的整数是从高到低排序的,那么后继者将是 high - 1 .


对于某些值,计算后继稍微复杂一些...

对于 double : (自然排序) Math.nextAfter(high, Double.POSITIVE_INFINITY)high 的继承者自 nextAfter获取 high 之后的相邻值这样就没有什么可以介于high之间和 nextAfter(high..) . 请注意,您可能会遇到 double 的最大/最小值或负/正无穷大值问题,因此您可能需要检查 high首先

对于现实世界中的 float ,这是行不通的(除非您对精度设置了一些限制)。这仅适用于此处,因为在计算机中, float 总是无一异常(exception)的精度有限,因此您可以计算该精度的下一个可能值(这就是 nextAfter 所做的)。

关于java - SortedSet 的元素类型允许计算给定值的后继,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51011936/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com