Interaction.Partition(Int64, Int64, Int64, Int64) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vrátí řetězec představující počítanou oblast, která obsahuje číslo.
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
Parametry
- Number
- Int64
Povinná hodnota. Long
. Celé číslo, které chcete najít v jedné z počítaných oblastí.
- Start
- Int64
Povinná hodnota. Long
. Celé číslo, které označuje začátek sady počítaných oblastí. Start
nesmí být menší než 0.
- Stop
- Int64
Povinná hodnota. Long
. Celé číslo, které označuje konec sady počítaných rozsahů. Stop
nesmí být menší než nebo rovno .Start
- Interval
- Int64
Povinná hodnota. Long
. Celé číslo, které označuje velikost každého rozsahu vypočítaného mezi Start
a Stop
. Interval
nesmí být menší než 1.
Návraty
Řetězec představující počítanou oblast, která obsahuje číslo.
Výjimky
Start
< 0, Stop
<= Start
nebo Interval
< 1.
Příklady
Následující příklad nastaví řadu rozsahů pro desetiletí od roku 1950 do roku 2049. Vyhledá hodnotu year
v příslušném rozsahu a vrátí String
hodnotu zobrazující tento rozsah. Pokud year
má například hodnotu 1984, Partition
vrátí "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 & ".")
Poznámky
Funkce Partition
vypočítá množinu číselných oblastí, z nichž každá obsahuje počet hodnot určených funkcí Interval
. První oblast začíná na Start
a poslední oblast končí v Stop
. Funkce Partition
pak určí, která oblast obsahuje Number
, a vrátí řetězec popisující daný rozsah. Oblast je v řetězci reprezentována jako "lowervalue:uppervalue", kde dolní konec rozsahu (dolní hodnota) je oddělen od horního konce (horní hodnota) dvojtečka (:).
V případě potřeby Partition
funkce vloží úvodní mezery před dolní ahorní hodnotu , aby obě měly stejný počet znaků jako řetězcové vyjádření hodnoty (Stop
+ 1). Tím se zajistí, že pokud použijete výstup Partition
funkce s několika hodnotami Number
, výsledný text bude během jakékoli následné operace řazení zpracován správně.
V následující tabulce jsou uvedeny některé ukázkové řetězce pro oblasti vypočítané pomocí tří sad Start
, Stop
a Interval
. Sloupce "První oblast" a "Poslední oblast" zobrazují nejnižší a nejvyšší možné rozsahy vzhledem k hodnotám Start
a Stop
. Sloupce "Před první oblastí" a "Po posledním rozsahu" zobrazují řetězce vrácené pro hodnoty Number
menší než Start
a větší než Stop
, v uvedeném pořadí.
Start |
Stop |
Interval |
Před prvním rozsahem | První oblast | Poslední oblast | Po posledním rozsahu |
---|---|---|---|---|---|---|
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: " |
Třetí řádek v předchozí tabulce zobrazuje výsledek, když Start
a Stop
definuje množinu čísel, které nelze rovnoměrně dělit pomocí Interval
. Poslední rozsah končí na Stop
, takže je dlouhý jenom 11 čísel, i když Interval
je 20.
Pokud Interval
je 1, je rozsah "Number
:Number
" bez ohledu na Start
argumenty a Stop
. Pokud Number
je například 267, Stop
je 1000 a Interval
je 1, Partition
vrátí "267: 267".
Partition
může být užitečné při vytváření databázových dotazů. Můžete vytvořit dotaz SELECT, který ukazuje, kolik objednávek probíhá v různých rozsazích hodnot, například u faktur od 1 do 1000, 1001 až 2000 atd.