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


Практическое руководство. Инициализация переменной типа массива

Обновлен: Ноябрь 2007

Можно инициализировать массив во время его создания, как часть условия New (Visual Basic). Можно также инициализировать его в последующих операторах присваивания.

Ниже приведены аспекты, которые можно инициализировать как массив.

  • Верхняя граница индекса, указывающая длины измерений массива

  • Значения нескольких или всех элементов массива

Можно инициализировать любой из них отдельно от всех остальных. Тем не менее, если указать значения элемента, а не верхние границы, то верхняя граница будет определяться числом введенных значений.

Чтобы выполнить инициализацию массива в условии New во время создания

  • В условии New укажите верхнюю границу индекса в скобках и введите значения элементов в фигурных скобках ({}). В следующем примере объявляется, создается и инициализируется переменная для хранения массива с элементами Тип данных Char (Visual Basic) с указанием верхней границы и значения.

    Dim testChars As Char() = New Char(2) {"%"c, "&"c, "@"c}
    

    После выполнения этого оператора массив в переменной testChars имеет длину 3, элементы с индексом от 0 до 2, хранящие инициализированные значения. Если указать верхнюю границу и значения, необходимо включить значение для каждого элемента с индексами от 0 до верхней границы.

    Обратите внимание на знак типа литерала c, который принудительно приводит знак литерала к типу данных Char. По умолчанию (без знака типа) литерал, заключенный в кавычки (" ") использует тип данных String.

    Нет необходимости указывать индекс верхней границы, если значения элементов указываются в условии New. В следующем примере объявляется, создается и инициализируется переменная для хранения массива с элементами Тип данных Boolean (Visual Basic) с указанием их значения.

    Dim answers As Boolean() = New Boolean() {True, True, False, True}
    

    После выполнения этого оператора массив в переменной answers имеет длину 4, элементы с индексами от 0 до 3, хранящие инициализированные значения.

Можно инициализировать верхнюю границу индекса без инициализации элементов. При создании массива таким образом необходимо использовать последовательный оператор присваивания, чтобы инициализировать каждое значение элемента.

Чтобы инициализировать массив в последовательных операторах присваивания

  1. Укажите верхнюю границу индекса в объявлении переменной массива.

  2. Используйте один или несколько операторов присваивания, каждый из которых присваивает значение одному из элементов массива. В следующем примере объявляется и создается переменная для хранения массива элементов Строковый тип данных (String) (Visual Basic) и указываются два значения элементов в последовательных операторах.

    Dim comments(30) As String
    comments(0) = "This is the first comment."
    comments(5) = "This is the sixth comment."
    

    После выполнения этих операторов массив в переменной comments имеет длину 31, элементы с индексами от 0 и 5, хранящие инициализированные значения, и другие 29 элементов, содержащие значения по умолчанию. Если инициализировать массив таким образом, можно инициализировать одни элементы и пропустить другие.

или

  • Используйте Оператор ReDim (Visual Basic) для инициализации длины массива.

    ReDim comments(5)
    

    После выполнения этого оператора массив в переменной comments имеет длину 6, все элементы содержат значения по умолчанию.

    y13tek7e.alert_note(ru-ru,VS.90).gifПримечание.

    Можно инициализировать верхнюю границу индекса только в одном месте. Если верхняя граница определяется в скобках, в которых находится имя переменной массива, условие New использовать нельзя. Если верхняя граница определяется в скобках в условии New, необходимо оставить скобки, в которых записано имя переменной, пустыми.

См. также

Задачи

Практическое руководство. Объявление переменной типа массива

Практическое руководство. Создание массива

Практическое руководство. Инициализация многомерного массива

Практическое руководство. Инициализация массива массивов

Устранение неполадок, связанных с массивами

Основные понятия

Обзор массивов в Visual Basic

Другие ресурсы

Массивы в Visual Basic