Похожие презентации:
Введение в массивы. Типы массивов в C#. Класс Array. (Модуль 5)
1. Модуль 5
Массивы2. Обзор модуля
В этом модуле вы изучитеВведение в массивы
Типы массивов
Класс Array
Изучаем C#/ Модуль 5/ 2 из 17
3. Занятие 1 - Введение в массивы
На первом занятии, Введение в массивы, выизучите:
Определение массива и его назначение.
Синтаксис объявления массивов.
Изучаем C#/ Модуль 5/ 3 из 17
4. Назначение
Массив - это коллекция связанных значений,размещенных в соседних ячейках памяти, и эти
значения адресуются с помощью общего имени
массива.
Это упрощает задачу хранения этих значений.
Изучаем C#/ Модуль 5/ 4 из 17
5. Определение
Массив всегда хранит значения одного типаданных.
Каждое значение рассматривается как его
элемент.
C# поддерживает массивы с индексом, который
начинается с нуля.
Такое расположение величин помогает в
эффективном хранении, легкой сортировке и
простому определению длины данных.
Изучаем C#/ Модуль 5/ 5 из 17
6. Объявление массивов
СинтаксисМассивы - это переменные ссылочного типа,
type[]
arrayName;
создание
которых
использует два этапа:
объявление и выделение памяти.
где,
type: указывает тип данных элементов массива (
например, int и char).
arrayName:
определяет
имя массива. тип данных,
Объявление
массива
указывает
который он будет хранить и идентификатор.
Объявление массива не выделяет для него
памяти.
Изучаем C#/ Модуль 5/ 6 из 17
7. Инициализация массивов
ПримерСинтаксис
Вывод
Типы может
данныхбыть создан
Значения
по
Массив
с помощью
ключевого
умолчанию
class
Следующий
синтаксис
используется
для
создания
массива.
The
count
value
0массив
Numbers
слова
new,
а is:
затем
инициализирован.
Следующий
код создает
целых
чисел,
которых
может быть не
The
count
{
более
пяти.value is: 1 0
int
arrayName
newMain(string[]
type[size-value];
void
args)
The static
count =
value
is: 2
public int[] number = new int[5];
{count value is: 3 0.0
The
float
Следующий
синтаксис используется для объявления и создания
int[]
count
массива
The count
value
is:= 4new int[10];//создание
массива
в
том
же
выражении
с
помощью
ключевого
слова new.
The
Следующий
код
инициализирует
строковый
массив,
который
int
counter
=
0;
double
count value is: 5 0.0
присваивает
имена
индекса.
for(int
i is:
=
0;
i type[size-value];
< 10; значений
i++)
type[]
arrayName
=для
new
The count
value
6заданных
{ value is:
char
public
string[]
studNames
The
count
7 ‘\0’ = new string{“Allan”, “Wilson”,
где,
count[i]
=
counter++; //присваивание значений
“James”,
“Arnold”};
The
count
value
is:
8
size-value:
Указывает
string
null число элементов в массиве.
элементам
The count value is: 9
Console.WriteLine(“The count value is: “ +
Следующий код
сохраняет
строку “Jack”
имя пятого
поступившего
синтаксис
используется
для как
создания
и инициализации
count[i]);
массива без помощи
new.
студента.
//выводключевого
значений слова
элементов
studNames[4]
= “Jack”; = {val1, val2, val3, ..., valN};
type[
] }arrayIdentifier
}
где,
}
Массив может быть инициализирован во время
своего объявления, в этом случае ключевое слово
new не используется.
Создание и инициализация массива ключевым
словом new включает указание размера массива.
val1: значение первого элемента.
Таблица
значения
valN:перечисляет
значение n-го элемента.
по умолчанию для
некоторых широко используемых типов данных.
Изучаем C#/ Модуль 5/ 7 из 17
8. Занятие 2 - Типы массивов
На втором занятии, Типы массивов, вы изучите:Объяснение одномерных массивов.
Объяснение многомерных массивов.
Объяснение неровных массивов и их
использование.
Объяснение, как проходить циклом по массивам,
используя foreach- цикл.
Изучаем C#/ Модуль 5/ 8 из 17
9. Одномерные массивы
СинтаксисПример
Вывод
Элементы одномерного массива сохраняются
единой строкой в выделенной памяти.
type[]
class SingleDimensionArray
arrayName; //объявление
James
arrayName
{
= new type[length]; // создание
Alex
static void Main(string[] args)
Fernando
где,
Объявление
и инициализация одномерных
{
массивов
такие
же, как
и стандартные
объявления
type:
Тип переменной,
квадратными
string[]
students
=сопровождаемый
new
string[3]
{“James”,
скобками
([]).
и инициализация
массивов.
“Alex”, “Fernando”};
arrayName:
определяет
имя переменной
for (int i=0;
i < students.Length;
i++)
length:
Указывает число элементов в
объявляемом
{
массиве.
Элементы
индексируются от 0 до (n-1), где n Console.WriteLine(students[i]);
Создает экземпляр
массива.
}
числоnew:
элементов
массива.
}
}
Изучаем C#/ Модуль 5/ 9 из 17
10. Многомерные массивы
Прямоугольный массивВывод
Синтаксис
Пример
Позволяют
сохранять массив,
комбинацию
значений
Это многомерный
в котором
все указанные
одного
типа в двух
и более
измерениях.
измерения
имеют
постоянные
значения.
class
0 1 RectangularArray
2 3 4
{type[,] <arrayName>; //объявление
(string
[] args)
5arrayName
6static
7 8 void
9 =Main
new
type[value1
, value2]; //инициализация
{
10 11 int[,]
12 13
14
dimension = new int [4, 5];
int
15
17 numOne
18 19
= 0;
где,16
for (int i=0; i<4; i++)
type: Тип данных, сопровождаемый [].
{
for
(int j=0; j<5;
j++)
arrayName:
определяет
имя массива.
{
value1:
Указывает число строк.
dimension [i, j] = numOne;
value2:
Указывает число столбцов.
numOne++;
}
}
for (int i=0; i<4; i++)
{
for (int j=0; j<5; j++)
{
Console.Write(dimension [i, j] + “ “);
}
Console.WriteLine();
}
}
}
Он всегда имеет одинаковое число столбцов в
Измерения
каждой массива
строке. представлены строками и
столбцами, аналогичными листу Microsoft Excel.
Неровный массив
ЕстьЭто
двамногомерный
типа многомерных
массивов:
массив,
в котором одно из
Прямоугольный
массив может иметь
указанных измерений
различающиеся
Неровный
массив значения.
Он может иметь неравное число столбцов для
каждой строки.
Изучаем C#/ Модуль 5/ 10 из 17
11. Неровные массивы
ВыводПример
Неровный массив - это многомерный массив,
выглядящий как массив массивов.
class
List JaggedArray
of companies in group 1: Intel AMD
{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.GetLength (0); i++)
{
Console.Write(“List of companies in group “ + (i+1) + “:\t”);
for (int j=0; j<companies[i].GetLength (0); j++)
{
Console.Write(companies [i][j] + “ “);
}
Console.WriteLine();
}
}
}
Он состоит из нескольких массивов, где число
элементов в каждом массиве может различаться.
Он оптимизирует использование памяти и
производительность.
Неровный массив
Изучаем C#/ Модуль 5/ 11 из 17
12. Использование цикла “foreach” для массивов
ПримерСинтаксис
Вывод
Цикл foreach в C# - это расширение цикла for.
class
Students
Congratulations!!
Ashley you
have been granted an extra
foreach(type<identifier>
in <list>)
{
leave
{
static
void Main(string[]
args)
Joe you
have
been granted an extra
Congratulations!!
Цикл
используется
для
осуществления
// statements
{
leave
}
специальных
над
такими
коллекциями,
string[] действий
studentNames
= new
string[3]
{ “Ashley”,
Congratulations!!
Mikel you have
been
granted
an
extra
“Joe”, “Mikel”};
leave
как массивы.
где,
foreach
studName in studentNames)
type:
Тип (string
переменной.
{
identifier:
Имя переменной.
“ +
list:Console.WriteLine(“Congratulations!!
Имя переменной массива.
Цикл читает
каждый
элемент
в указанном
studName
+ “ you
have been
granted an extra
leave”);
массиве.
}
}
}
Он позволяет запускать блок кода для каждого
элемента массива.
Изучаем C#/ Модуль 5/ 12 из 17
13. Занятие 3 - Класс Array
На последнем занятии, Array класс , вы изучите:Описание класса Array и его назначение.
Список обычно используемых свойств и методов
класса Array.
Объяснение, как конструировать массив с
помощью класса Array.
Изучаем C#/ Модуль 5/ 13 из 17
14. Класс “Array”
Это встроенный класс в пространстве имен Systemи базовый класс для всех массивов в C#.
Он обеспечивает методы для таких различных
задач, как:
создание
поиск
копирование
сортировка массивов
Изучаем C#/ Модуль 5/ 14 из 17
15. Свойства и методы
СвойстваМетоды
Описания
Описания
IsFixedSize
Класс Array
состоит
из системно-определенных
Возвращает
значение,
указывающее,
имеет
Свойства
Методы
Clear
Удаляет
вселогическое
элементы
в
массиве и
устанавливает
его ли
заданный
размер или нет. Значение по умолчанию размер
в 0.
свойств
имассив
методов,
используемых
создания и
Свойства
Класс Array
класса
позволяет
Array
позволяют
очищать,для
копировать,
изменять
true.
CopyTo
Копирует
все элементы
текущего одномерного массива в
управления
массивами
вэлементы,
C#.
IsReadOnly
элементы,
искать Возвращает
идругой
сортировать
объявленные
в массиве.
логическое
значение,
указывающее,
одномерный массив,
начиная
собъявленные
указаннойдоступен в
липозиции
массив индекса.
только по чтению или нет. Значение по
массиве.
умолчанию - false.
GetLength
Возвращает число элементов в массиве.
Свойства
также
называются
системными
IsSynchronize
Возвращает
логическое
значение,
указывающее,
способен
Таблица
отображает
свойства
класса Array.
GetLowerBound
Возвращает
нижнюю
границу
массива.
d
ли массив
поддерживать
одновременно несколько
свойствами
класса
Array.
Таблица
отображает
часто
используемые
GetUpperBound выполняющихся
потоков.
Значение
по умолчанию - false.
Возвращает верхнюю
границу
массива.
класса 32-битное
Array.
Length методыВозвращает
Initialize
целое,
указывающее
общее число
Инициализирует
каждый
элемент
массива вызовом
конструктора
по умолчанию класса Array.
элементов
массива.
LongLength
Sort
SetValue
Rank
GetValue
SyncRoot
Возвращает
64-битное одномерного
целое, указывающее
Сортирует элементы
массива.общее число
элементов массива.
Устанавливает указанное значение в заданной индексом
Возвращает
целое число, указывающее ранг, означающий
позиции массива.
число измерений массива.
Возвращает значение в заданной индексом позиции
Возвращает
массива. объект, использующийся для синхронизации
доступа к массиву.
Изучаем C#/ Модуль 5/ 15 из 17
16. Использование класса “Array”
Класс Array позволяет создавать массивы сПример
Синтаксис
помощью метода CreateInstance().
class
Subjects
public
static Array CreateInstance(Type elementType, int
{
length1,
length) int length2)
static void Main(string [] args)
{
где,
Array objArray = Array.CreateInstance(typeof
Array:
Возвращает
ссылку
на созданный массив.
length1:
Указывает
длину строки.
(string),
5);
Type:
Использует
оператор
typeof
length2:
Указывает
длину столбца.
objArray.SetValue(“Marketing”,
0); для явного приведения
типов. objArray.SetValue(“Finance”, 1);
objArray.SetValue(“Human
Resources”,
elementType: Результирующий
тип2);
после приведения.
objArray.SetValue(“Information Technology”, 3);
Length: Указывает длину массива.
objArray.SetValue(“Business Administration”, 4);
for (int i = 0; i <= objArray.GetUpperBound(0); i++)
{
Console.WriteLine(objArray.GetValue(i));
}
}
}
Он может использоваться с различными
параметрами для создания одномерных и
многомерных массивов.
Изучаем C#/ Модуль 5/ 16 из 17
17. Резюме
МассивыМассивы - коллекции значений одного типа
данных.
Типы массивов
Есть два типа массивов в C# - одномерные и
многомерные.
Класс Array
Класс Array обеспечивает методы и свойства
для создания, поиска и сортировки массивов.
Изучаем C#/ Модуль 5/ 17 из 17