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 и т. д.

Применяется к