Interaction.Partition(Int64, Int64, Int64, Int64) 方法

定义

返回一个字符串,该字符串表示包含某个数字的计算范围。

public:
 static System::String ^ Partition(long Number, long Start, long Stop, long Interval);
public static string Partition (long Number, long Start, long Stop, long Interval);
static member Partition : int64 * int64 * int64 * int64 -> string
Public Function Partition (Number As Long, Start As Long, Stop As Long, Interval As Long) As String

参数

Number
Int64

必需。 Long. 要在一个计算范围中找到的整数。

Start
Int64

必需。 Long. 一个整数,指示计算出的范围集的开始值。 Start 不能小于 0。

Stop
Int64

必需。 Long. 一个整数,指示计算出的范围集的结束值。 Stop 不能小于或等于 Start

Interval
Int64

必需。 Long. 一个整数,指示在 StartStop 之间计算的每个范围大小。 Interval 不能小于 1。

返回

一个字符串,该字符串表示包含某个数字的计算范围。

例外

Start< 0、 Stop<= StartInterval< 1。

示例

以下示例设置从 1950 年到 2049 年数十年的一系列范围。 它会在适当的范围内定位 的值 year ,并返回一个 String 显示该区域的值。 例如,如果 year 具有值 1984, Partition 则返回“1980:1989”。

Dim year As Long = 1984
' Assume the value of year is provided by data or by user input.
Dim decade As String
decade = Partition(year, 1950, 2049, 10)
MsgBox("Year " & CStr(year) & " is in decade " & decade & ".")

注解

函数 Partition 计算一组数值范围,每个范围都包含 指定的 Interval值数。 第一个范围从 Start开始,最后一个范围在 Stop结束。 然后,该 Partition 函数标识哪个区域包含 Number 并返回描述该范围的字符串。 范围在字符串中表示为“lowervalueuppervalue”,其中范围 (lowervalue) 的低端与高端 (高值) 之间用冒号 (:) 分隔。

如有必要,函数在 Partitionlowervalueuppervalue 之前插入前导空格,以便它们具有与值 (Stop + 1) 的字符串表示形式相同的字符数。 这可确保如果将函数的 Partition 输出与多个 值 Number一起使用,则在任何后续排序操作中都会正确处理生成的文本。

下表显示了使用 、 和 Interval三组计算的范围的StartStop一些示例字符串。 给定 和 的值 Start ,“第一个范围”和“最后一个范围”列显示可能的最小和 Stop最高范围。 “第一个区域之前”和“最后一个区域之后”列分别显示为小于Start和大于 Stop的值返回的Number字符串。

Start Stop Interval 在第一个范围之前 第一个范围 上一个范围 在最后一个范围之后
0 99 5 " : -1" " 0: 4" " 95: 99" "100: "
20 199 10 " : 19" " 20: 29" "190:199" "200: "
100 1010 20 " : 99" " 100: 119" "1000:1010" "1011: "

在上表中,第三行显示当 和 Stop 定义一组不能均匀除以 Interval的数字时Start的结果。 最后一个范围以 Stop结束,因此只有 11 个数字长,即使 Interval 为 20。

如果 Interval 为 1,则范围为“NumberNumber”,而不 Start 考虑 和 Stop 参数。 例如,如果 Number 为 267, Stop 为 1000,为 Interval 1, Partition 则返回“267:267”。

Partition 在构造数据库查询时非常有用。 可以创建一个 SELECT 查询,用于显示不同值范围内发生的订单数,例如发票值从 1 到 1000、1001 到 2000 等。

适用于