ExpC_Module 5ru_1.ppt
- Количество слайдов: 17
Модуль 5 Массивы
Обзор модуля В этом модуле вы изучите n Введение в массивы n Типы массивов n Класс Array Изучаем C#/ Модуль 5/ 2 из 17
Занятие 1 - Введение в массивы На первом занятии, Введение в массивы, вы изучите: n Определение массива и его назначение. n Синтаксис объявления массивов. Изучаем C#/ Модуль 5/ 3 из 17
Назначение n n Массив - это коллекция связанных значений, размещенных в соседних ячейках памяти, и эти значения адресуются с помощью общего имени массива. Это упрощает задачу хранения этих значений. Изучаем C#/ Модуль 5/ 4 из 17
Определение n n Массив всегда хранит значения одного типа данных. Каждое значение рассматривается как его элемент. C# поддерживает массивы с индексом, который начинается с нуля. Такое расположение величин помогает в эффективном хранении, легкой сортировке и простому определению длины данных. Изучаем C#/ Модуль 5/ 5 из 17
Объявление массивов n Синтаксис Массивы - это переменные ссылочного типа, type[] array. Name; создание которых использует два этапа: объявление и выделение памяти. где, type: указывает тип данных элементов массива ( например, int и char). array. Name: определяет имя массива. n Объявление массива указывает тип данных, который он будет хранить и идентификатор. n Объявление массива не выделяет для него памяти. Изучаем C#/ Модуль 5/ 6 из 17
Инициализация массивов n Пример Синтаксис может быть Вывод Типы Массив данных Значения по создан с помощью ключевого умолчанию § слова new, создает0 массив целых чисел, которых может быть не The count value is: class Numbers а затем инициализирован. § Следующий синтаксис используется для создания массива. Следующий код The count value is: 1 0 { более пяти. int array. Name value. Main(string[] args) The static = new is: 2 count void type[size-value]; public int[] number = new int[5]; The { count float value is: 3 0. 0 § Следующий синтаксис используется для объявления и создания int[] count new int[10]; //создание массива n The count value is: = 4 массива в том же выражении с помощью ключевого слова new. § Следующий counter = 5 0. 0 строковый массив, который int double код инициализирует The count value is: 0; присваивает имена = 6 i < 10; i++) для for(int type[] array. Nameis: 0; заданных значений индекса. The count valuei = new type[size-value]; char { public string[] stud. Names The count value is: 7 ‘ ’ = new string{“Allan”, “Wilson”, где, count[i] “James”, value is: = counter++; элементов в массиве. The count “Arnold”}; Указывает число//присваивание значений size-value: 8 null string элементам The count value is: 9 Console. Write. Line(“The count value is: “ + код сохраняет строку “Jack” создания и инициализации § Следующий синтаксис используется для как имя пятого поступившего count[i]); n массива без помощи ключевого слова new. студента. //вывод значений элементов stud. Names[4] = “Jack”; = {val 1, val 2, val 3, . . . , val. N}; type[ ] } array. Identifier } где, } Массив может быть инициализирован во время своего объявления, в этом случае ключевое слово new не используется. Создание и инициализация массива ключевым словом new включает указание размера массива. val 1: значение первого элемента. n Таблица перечисляет значения val. N: значение n-го элемента. по умолчанию для некоторых широко используемых типов данных. Изучаем C#/ Модуль 5/ 7 из 17
Занятие 2 - Типы массивов На втором занятии, Типы массивов, вы изучите: n Объяснение одномерных массивов. n Объяснение многомерных массивов. n Объяснение неровных массивов и их использование. n Объяснение, как проходить циклом по массивам, используя foreach- цикл. Изучаем C#/ Модуль 5/ 8 из 17
Одномерные массивы n Синтаксис Пример Вывод Элементы одномерного массива сохраняются единой строкой в выделенной памяти. type[] Single. Dimension. Array class James array. Name; //объявление array. Name = new type[length]; // создание { Alex static void Main(string[] args) Fernando n где, Объявление и инициализация одномерных { массивов такие же, как newстандартные объявления type: Тип переменной, = и string[3] {“James”, string[] students сопровождаемый квадратными скобками ([]). и инициализация массивов. “Alex”, “Fernando”}; array. Name: i=0; i < students. Length; i++) for (int определяет имя переменной length: Указывает число элементов в объявляемом { массиве. n Элементы. Console. Write. Line(students[i]); индексируются от 0 до (n-1), где n } числоnew: Создает экземпляр массива. элементов массива. } } Изучаем C#/ Модуль 5/ 9 из 17
Многомерные массивы n Прямоугольный Пример Вывод Синтаксис массив n Позволяют сохранять комбинацию значений class n Это многомерный массив, в котором все указанные 0 1 Rectangular. Array 2 3 4 {type[, ] <array. Name>; //объявление одного типа в двух и более измерениях. static void Main (string [] args) 5 6 7 измерения имеют постоянные значения. 8 9 array. Name = new type[value 1 , value 2]; //инициализация { 10 11 int[, ] dimension = new int [4, 5]; 12 13 14 15 16 int num. One 19 0; имеет одинаковое число столбцов в 17 всегда где, n Он 18 = for (int i=0; i<4; i++) type: строке. n Измерения. Тип данных, сопровождаемый []. {каждой массива представлены строками и array. Name: определяет имя массива. for (int столбцами, j=0; j<5; j++) число строк. { value 1: аналогичными листу Microsoft Excel. Указывает dimension [i, j] = num. One; n n } value 2: Указывает число столбцов. num. One++; } Неровный массив } for (int i=0; i<4; многомерных массивов: Есть. Это многомерный массив, в котором одно из два типа i++) n { for (int j=0; j<5; j++) n Прямоугольный массив может иметь различающиеся { указанных измерений Console. Write(dimension [i, j] + “ “); } значения. n Неровный массив Console. Write. Line(); } } n Он может иметь неравное число столбцов для каждой строки. Изучаем C#/ Модуль 5/ 10 из 17
Неровные массивы n n n Вывод Пример Неровный массив - это многомерный массив, выглядящий как group 1: Intel AMD class Jagged. Array List of companies in массивов. { List of companies in group 2: IBM Microsoft Sun static void Main (string[] args) List of companies in group 3: HP Canon Lexmark Epson { string[][] companies = new string[3][]; companies[0] = new string[] {“Intel”, “AMD”}; companies[1] = new string[] {“IBM”, “Microsoft”, “Sun”}; companies[2] = new string[] {“HP”, “Canon”, “Lexmark”, “Epson”}; for (int i=0; i<companies. Get. Length (0); i++) { Console. Write(“List of companies in group “ + (i+1) + “: t”); for (int j=0; j<companies[i]. Get. Length (0); j++) { Console. Write(companies [i][j] + “ “); } Console. Write. Line(); } } } Он состоит из нескольких массивов, где число элементов в каждом массиве может различаться. Он оптимизирует использование памяти и производительность. Неровный массив Изучаем C#/ Модуль 5/ 11 из 17
Использование цикла “foreach” для массивов n Пример foreach Синтаксис Вывод Цикл в C# - это расширение цикла for. class Students Congratulations!! Ashley you<list>) foreach(type<identifier> in have been granted an extra { leave { static void Main(string[] been n Congratulations!! Joe you haveargs) granted an extra Цикл statements // используется для осуществления { leave } специальных действий havenew string[3] an“Ashley”, string[] Mikel you над такими коллекциями, Congratulations!!student. Names = been granted { extra leave массивы. как “Joe”, “Mikel”}; где, foreach переменной. type: Тип (string stud. Name in student. Names) { identifier: Имя переменной. Console. Write. Line(“Congratulations!! “ + list: Имя переменной массива. n Цикл читает каждый you have been granted an extra stud. Name + “ элемент в указанном leave”); массиве. } } } n Он позволяет запускать блок кода для каждого элемента массива. Изучаем C#/ Модуль 5/ 12 из 17
Занятие 3 - Класс Array На последнем занятии, Array класс , вы изучите: n Описание класса Array и его назначение. n Список обычно используемых свойств и методов класса Array. Объяснение, как конструировать массив с помощью класса Array. n Изучаем C#/ Модуль 5/ 13 из 17
Класс “Array” n n Это встроенный класс в пространстве имен System и базовый класс для всех массивов в C#. Он обеспечивает методы для таких различных задач, как: n n создание поиск копирование сортировка массивов Изучаем C#/ Модуль 5/ 14 из 17
Свойства и методы Свойства Методы Описания Is. Fixed. Size Array состоит из системно-определенных n n. Свойства. Возвращает логическое в массиве и устанавливает его ли n Методы Удаляет все элементы значение, указывающее, имеет Clear. Класс массив заданный размер свойств Array впозволяетпозволяюткопировать, -и иразмер 0. Array или нет. Значение по умолчанию n Свойстваметодов, используемых для создания n Класс true. класса очищать, изменять Copy. To Копирует все элементы текущего одномерного управления объявленные. C#. указывающее, массива в в Is. Read. Only элементы, массивами массив, массиве. искать Возвращает логическое значение, с указанной и сортировать в в начиная объявленные доступен другой одномерный элементы, ли позиции только по массиве. массив индекса. чтению или нет. Значение по умолчанию - false. Get. Length Возвращает число элементов в массиве. n n. Свойства также логическое значение, указывающее, Is. Synchronize Возвращаетназываются системными способен Таблица отображает свойства класса Array. Get. Lower. Bound ли массив поддерживать одновременно несколько Возвращает нижнюю границу массива. d свойствами класса Array. n Таблица отображает часто используемые Get. Upper. Bound выполняющихся потоков. Значение по умолчанию - false. Возвращает верхнюю границу массива. класса Array. Length методы Инициализирует каждый элемент массива вызовом Initialize Возвращает 32 -битное целое, указывающее общее число конструктора по умолчанию класса Array. элементов массива. Long. Length Sort Set. Value Rank Get. Value Sync. Root Возвращает элементы одномерного массива. общее число Сортирует 64 -битное целое, указывающее элементов массива. Устанавливает указанное значение в заданной индексом Возвращает целое число, указывающее ранг, означающий позиции массива. число измерений массива. Возвращает значение в заданной индексом позиции Возвращает объект, использующийся для синхронизации массива. доступа к массиву. Изучаем C#/ Модуль 5/ 15 из 17
Использование класса “Array” n Класс Пример Array Синтаксис позволяет создавать массивы с помощью метода Create. Instance(). class Subjects public static Array Create. Instance(Type element. Type, int { length 1, length) int length 2) static void Main(string [] args) { n где, Array obj. Array = Array. Create. Instance(typeof Array: Возвращает ссылку строки. length 1: Указывает длину на созданный массив. (string), 5); Type: Использует операторстолбца. явного приведения length 2: Указывает длину typeof obj. Array. Set. Value(“Marketing”, 0); для типов. obj. Array. Set. Value(“Finance”, 1); obj. Array. Set. Value(“Human Resources”, 2); element. Type: Результирующий тип после приведения. obj. Array. Set. Value(“Information Technology”, 3); Length: Указывает длину массива. obj. Array. Set. Value(“Business Administration”, 4); for (int i = 0; i <= obj. Array. Get. Upper. Bound(0); i++) { Console. Write. Line(obj. Array. Get. Value(i)); } } } Он может использоваться с различными параметрами для создания одномерных и многомерных массивов. Изучаем C#/ Модуль 5/ 16 из 17
Резюме n n n Массивы - коллекции значений одного типа данных. Типы массивов n Есть два типа массивов в C# - одномерные и многомерные. Класс Array n Класс Array обеспечивает методы и свойства для создания, поиска и сортировки массивов. Изучаем C#/ Модуль 5/ 17 из 17
ExpC_Module 5ru_1.ppt