
- •8) Переменные. Динамическая инициализация переменных.
- •9) Область действия (scope) и время жизни переменных
- •10) Одномерные массивы
- •11)Многомерные массивы. Нерегулярные массивы.
- •12) Операции присваивания и сравнения. Операции присваивания и сравнения
- •13) Арифметические операции
- •14) Поразрядные операции. В Java определено несколько поразрядных, или битовых, операций. Эти операции применимы только к целочисленным типам.
10) Одномерные массивы
Массив –это набор однотипных переменных, на которые ссылаются по общему имени.
Массивы создаются из элементов любого типа, и они могут иметь одно или несколько измерений. К определенному элементу в массиве обращаются по его индексу (номеру). Массивы предлагают удобные средства группировки связанной информации.
Одномерные массивы
Одномерный массив – это, по существу, список однотипных переменных.
Объявление массива:
<тип> <идентификатор>[ ];
Альтернативное объявление:
<тип>[ ] <идентификатор>;
Хотя объявление определяет переменную массива, никакого массива в действительности не существует. Для связывания массива с фактическим набором значений используют операцию распределения памяти – операцию new.
Формат применения операции:
<идентификатор> = new <тип> [<размер>];
Т.е. процесс получения массива включает два шага:
Объявление переменной массива;
Выделение памяти, которая будет содержать массив, используя операцию new, и назначить ее переменной массива.
После чего можно обращаться к элементам массива.
В Java допускается инициализация массива во время его объявления. Инициализатор массива – это список разделенных запятыми выражений, окруженный фигурными скобками. При этом операция new не используется.
В отличии от других языков программирования Java делает строгие проверки, чтобы удостовериться, что не было случайного обращения к области не принадлежащей массиву, исполнительная система делает тщательные проверки корректность индексов массивов.
11)Многомерные массивы. Нерегулярные массивы.
Массив –это набор однотипных переменных, на которые ссылаются по общему имени.
Многомерные массивы – это, фактически массивы массивов.
Чтобы объявить многомерную массива, необходимо определить каждый дополнительный индекс, используя другой набор скобок.
Нумерация элементов массива: (левый индекс – номер строки, правый –номер столбца)
|
0-столбец |
1-столбец |
2-столбец |
3-столбец |
4-столбец |
0-строка |
[0][0] |
[0][1] |
[0][2] |
[0][3] |
[0][4] |
|
|
|
|
|
|
1-строка |
[1] [0] |
[1] [1] |
[1] [2] |
[1] [3] |
[1] [4] |
|
|
|
|
|
|
2-строка |
[2] [0] |
[2] [1] |
[2] [2] |
[2] [3] |
[2] [4] |
|
|
|
|
|
|
3-строка |
[3] [0] |
[3] [1] |
[3] [2] |
[3] [3] |
[3] [4] |
Java допускает создание неровных (нерегулярных) массивов. Например, имеющих следующую структуру:
|
0-столбец |
1-столбец |
2-столбец |
3-столбец |
4-столбец |
0-строка |
[0][0] |
[0][1] |
[0][2] |
|
|
|
|
|
|
|
|
1-строка |
[1] [0] |
[1] [1] |
|
|
|
|
|
|
|
|
|
2-строка |
[2] [0] |
[2] [1] |
[2] [2] |
[2] [3] |
[2] [4] |
|
|
|
|
|
|
3-строка |
[3] [0] |
|
|
|
|
Использование таких массивов не рекомендуется, т.к. они ведут себя противоположно ожидаемому поведению многомерного массива.
Многомерные массивы можно инициализировать динамически. Для этого для каждого измерения его собственный набор значений заключают в фигурные скобки:
int array[ ][ ] = {
{0, 1, 2, 3, 4},
{10, 11, 12, 13, 14},
{20, 21, 22, 23, 24}
};