Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Справочная информация. Двумерный массив представляет собой массив ячеек, каждая из которых имеет тип одномерный массив





Двумерный массив представляет собой массив ячеек, каждая из которых имеет тип "одномерный массив". Соответствующим образом он и задается. Например, задание двумерного массива целых чисел будет выглядеть так:

int[][] a=new int[10][20];

Будет задана ячейка типа "двумерный массив", а также создан и назначен этой ссылочной переменной массив, имеющий по первому индексу 10 элементов, а по второму 20. То есть мы имеем 10 ячеек типа "одномерный массив", каждая из которых ссылается на массив из 20 целых чисел. При этом базовым типом для ячеек по первому индексу является int[], а для ячеек по второму индексу int.

Рассмотрим работу с двумерными массивами на примере заполнения двумерного массива случайными числами:

int m=10;//10 строкint n=20;//20 столбцовint[][] a=new int[m][n];for(int i=0;i<m;i++){ //цикл по строкам for(int j=0;j<n;j++){ //цикл по столбцам a[i][j]=(int)(100*Math.random()); System.out.print(a[i][j]+" "); }; System.out.println();//перевод на новую строку после вывода строки матрицы};

 

Многомерные массивы задаются аналогично двумерным – только указывается необходимое количество прямоугольных скобок. Следует отметить, что массивы размерности больше 3 используют крайне редко.

Обычно в двумерных и многомерных массивах задают одинаковый размер всех массивов, связанных с ячейками по какому-либо индексу. Такие массивы называют регулярными. В Java, в отличие от большинства других языков программирования, можно задавать массивы с разным размером массивов, связанных с ячейками по какому-либо индексу. Такие "непрямоугольные" массивы называют иррегулярными. Обычно их используют для экономии памяти. При работе с иррегулярными массивами следует быть особенно аккуратными, так как разный размер "вложенных" массивов часто приводит к ошибкам при реализации алгоритмов.

Пример задания иррегулярного двумерного массива треугольной формы:

int n=9;int[][] a=new int[n][];for(int i=0;i<a.length;i++){ //цикл по строкам a[i]=new int[i+1]; //число элементов в строке равно i+1 for(int j=0;j<a[i].length;j++){ //цикл по столбцам a[i][j]=100*i+j; System.out.print(a[i][j]+" "); }; System.out.println();//перевод на новую строку после вывода строки матрицы};

 

После объявления и определения массива его требуется инициализировать – записать нужные значения в ячейки.

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

При инициализации двумерных и многомерных массивов используют вложенные массивы, задаваемые с помощью фигурных скобок. Например, фрагмент кода

int[][] b= new int[][]{ {2,0,0,0}, //это b[0] {2,0,0,1}, //это b[1] {2,0,0,2}, //это b[2] {1,0,0,0}, //это b[3] {2,0,0,0}, //это b[4] {3,0,0,0}, //это b[5]};

приведет к заданию целочисленного двумерного массива b, состоящего из 6 строк и 4 столбцов, т.е. int[6][4]. Таким образом можно задавать как регулярные, так и иррегулярные массивы. Но следует помнить, что в таком варианте синтаксиса проверки правильности размера массива по индексам не делается, что может привести к ошибкам. Например, следующий код при компиляции не выдаст ошибки, а будет создан иррегулярный массив:

int[][] b= new int[][]{ {2,0,0,0}, //это b[0] {2,0,0,1}, //это b[1] {2,0,0,2}, //это b[2] {1,0,0,0}, //это b[3] {2,0,0,0}, //это b[4] {3,0,0}, //это b[5] – массив из трех элементов};

 

Date: 2016-05-15; view: 335; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию