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. Целое число, указывающее размер каждого диапазона, вычисляемого между 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 и возвращает строку, описывающую этот диапазон. Диапазон представлен в строке как "нижнее значение:uppervalue", где нижний конец диапазона (нижнее значение) отделяется от верхнего конца (верхнего значения) двоеточием (:).
При необходимости функция вставляет ведущие пробелы перед Partition и верхним значением, чтобы оба они имели одинаковое количество символов, что и строковое представление значения (Stop+ 1). Это гарантирует, что при использовании выходных данных Partition функции с несколькими значениями Numberрезультирующий текст будет обрабатываться правильно во время любой последующей операции сортировки.
В следующей таблице показаны некоторые примеры строк для диапазонов, вычисляемых с помощью трех наборов Start, Stopи Interval. В столбцах "Первый диапазон" и "Последний диапазон" отображаются самые низкие и самые высокие диапазоны с учетом значений Start и Stop. В столбцах "До первого диапазона" и "После последнего диапазона" отображаются строки, возвращаемые для значений Number меньше Start и больше, чем Stopсоответственно.
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: " |
В предыдущей таблице третья строка показывает результат, когда Start и Stop определяет набор чисел, на которые нельзя равномерно разделить Interval. Последний диапазон заканчивается 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 и т. д.