Поделиться через


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 , и возвращает строку, описывающую этот диапазон. Диапазон представлен в строке как "lowervalue:uppervalue", где нижний конец диапазона (lowervalue) отделяется от верхнего конца (uppervalue) двоеточием (:).

При необходимости Partition функция вставляет пробелы в начале перед lowervalue и uppervalue , чтобы они оба имели одинаковое количество символов, что и строковое представление значения (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 и т. д.

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