Помогни ни да направим Uroci.net по - богат! Добави урок

Масиви - Arrays

bubust   трудност:    видян: 8401

Дефиниция на масив - Array

Нека S1, S2 ..., SN е крайно множество, и нека T е тип данни (като Integer). Тогава array от тип T е функцията:

arr:S1 x S2 x ... x SN T където S1 x S2 x ... x SN са декартов продукт от множеството S1, S2 ..., SN.

За масиви във VB .NET (и другите езици в Common Language Runtime), множеството Si трябва да има следната форма:

Si={0,1,...,Ki}

С други думи Si е крайно множество от последователни цели числа, стартиращи от 0. Всяка позиция в декартовия продукт е свързана с координатите в масива. За всяка координата, цялото число Ki се нарича най-висок индекс на координатата. Най-ниският индекс е 0 за масиви във VB .NET.

Оразмеряване на масив

Дименсия на масива (Dimension of an Array)

Номерът N от координатите в домейна на функцията arr се нарича дименсия -dimension (или някога ранг-rank) на масива. Масив с дименсия 1 е едно-дименсионален (one-dimensional array), с дименсия 2 се наричат дву-дименсионални (two-dimensional array) и така нататък.

Размер (Size) на масива

Наред с дименсията, всеки масив има размер - size. Примерно:

arr:{0,1,...,5}

T

има размер 6.

Масивът:

arr:{0,1,...,5}x{0,1,...,8}

T

има размер 6x9.

Три дименсионалният масив:

arr:{0,1,...,5}x{0,1,...,8}x{0,1}

T

има размер 6x9x2.


Масиви във VB .NET

В VB .NET, винаги най-ниския индекс е 0. Начини за деклариране на едно-дименсионални масиви:

' Implicit constructor: Без определяне на размера и без инициализация

Dim Days( ) As Integer

' Explicit constructor: Без определяне на размера и без инициализация

Dim Days() As Integer = New Integer( ) {}

' Implicit constructor: С определяне на размера но без инициализация

Dim Days(6) As Integer

' Explicit constructor: С определяне на размера но без инициализация

Dim Days( ) As Integer = New Integer(6) {}

' Implicit constructor: С определяне на размера и инициализация

Dim Days( ) As Integer = {1, 2, 3, 4, 5, 6, 7}

' Explicit constructor, С определяне на размера и инициализация

Dim Days( ) As Integer = New Integer(6) {1, 2, 3, 4, 5, 6, 7}

Декларирането на масива може:

· Да извика конструктора на масиви косвено или пряко. (Конструкторът е функция, която VB .NET използва да създаде масива.)

· Специфицира и инициализира размера за всяка дименсия или да го остави не специфициран.

· Инициализира или не елементите на масива.

Важно е да се отбележи че в декларацията:

Dim ArrayName(X) As ArrayType

номера X е горен индекс - upper bound на масива. Елементите започват от ArrayName(0) до ArrayName(X), и масивът има X+1 елемента. По същият начин се декларират много дименсионални масиви. Следният пример декларира и инициализира дву-дименсионален масив :

Dim X(,) As Integer = {{1, 2, 3}, {4, 5, 6}}

а следният код разпечатва съдържанието на масива:

Debug.Write(X(0, 0))

Debug.Write(X(0, 1))

Debug.Writeline(X(0, 2))

Debug.Write(X(1, 0))

Debug.Write(X(1, 1))

Debug.Write(X(1, 2))

123

456

Във VB .NET, всички масиви са динамични. Декларираният размер е просто инициализирания размер на масива, който е субект на променяне чрез инструкция ReDim.

Дименсията на масива не може да бъде сменяна. Нещо повече, точно обратно на VB 6, ReDim не може да бъде използван за деклариране на масив, а само за редименсиниране на масив. Всички масиви трябва да бъдат инициализиращо декларирани чрез Dim (или еквивалентен) оператор.


Страници: 1 2 »

Регистрирайте се, за да добавите коментар


Калдейта ЕООД - © 2003-2010. Всички права запазени.
Препоръчваме: Национален Бизнес | Bomba.bg | IT Новини | Диплома.бг | TRAVEL туризъм | Реферати | AmAm.bg | Иде.ли | Курсови работи | Фото Форум | Spodeli.net | Фото-Култ | Atol.bg | Elmaz.com | MobileBulgaria.com | Казанлък.Com