Interaction.Partition(Int64, Int64, Int64, Int64) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
返回一个字符串,该字符串表示包含某个数字的计算范围。
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
. 一个整数,指示在 Start
和 Stop
之间计算的每个范围大小。 Interval
不能小于 1。
返回
一个字符串,该字符串表示包含某个数字的计算范围。
例外
Start
< 0、 Stop
<= Start
或 Interval
< 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
并返回描述该范围的字符串。 范围在字符串中表示为“lowervalue:uppervalue”,其中范围 (lowervalue) 的低端与高端 (高值) 之间用冒号 (:) 分隔。
如有必要,函数在 Partition
lowervalue 和 uppervalue 之前插入前导空格,以便它们具有与值 (Stop
+ 1) 的字符串表示形式相同的字符数。 这可确保如果将函数的 Partition
输出与多个 值 Number
一起使用,则在任何后续排序操作中都会正确处理生成的文本。
下表显示了使用 、 和 Interval
三组计算的范围的Start
Stop
一些示例字符串。 给定 和 的值 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,则范围为“Number
:Number
”,而不 Start
考虑 和 Stop
参数。 例如,如果 Number
为 267, Stop
为 1000,为 Interval
1, Partition
则返回“267:267”。
Partition
在构造数据库查询时非常有用。 可以创建一个 SELECT 查询,用于显示不同值范围内发生的订单数,例如发票值从 1 到 1000、1001 到 2000 等。