Многомерные массивы Java

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

Копирование массива производится поэлементно. Класс System содержит метод arrayсору, предоставляющий различные варианты копирования массива.

Класс Arrays содержит методы для выполнения сортировки (sort) и поиска (binarySearch), для копирования и заполнения массивов.

Пример 1 — объявляется и инициализируется массив В:

int [ ] [ ] В={{ 1,2,3}, {2,4,6}};

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

Пример 2 — двумерный массив JAVA объявляется и создается. Значения элементов — по умолчанию:

int [ ] [ ] В = new int[2] [3];

Фактически создается одномерный массив В, элементы которого — count и одномерные массивы int[], соответствующие строкам нашего массива. В этом легко убедиться, если создать массив В в панели кода. Проверяя значения B.length и В[0].length, видим, что они равны 2 и 3.

Типовые задачи для многомерных массивов JAVA


  • вычисление суммы элементов массива
  • подсчет количества элементов массива, удовлетворяющих данному условию
  • нахождение элемента с экстремальным (минимум, максимум) значением
  • копирование массива
  • сортировка элементов (расположение в порядке возрастания или убывания)
  • поиск данного элемента в массиве.

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

Правила коррекции:

  • сумма: текущее значение суммы увеличить на значение очередного элемента.
  • количество: если очередной элемент «подходит», увеличить количество на 1.
  • минимум: если очередной элемент меньше текущего минимума, заменить минимум значением этого элемента.
  • максимум: если очередной элемент больше текущего максимума, заменить максимум значением этого элемента;

При поиске экстремальных значений важен выбор начального значения экстремума. В качестве такового следует выбрать значение одного из элементов массива JAVA, например, А[0]. При вычислении суммы и количества элементов начальными значениями должны быть нули.

1 комментарий

Global_Solutions
Разработка web-приложени й для торговли через интернет, электронного обучения, социальных сетей, ведения бизнеса, управления производственным процессом
Выбор платформы: отмеченная наградой система Joomla! ® CMS, Magento, технология Microsoft.NET SharePoint, Java или LAMP (PHP, MySQL)
Существует возможность интеграции нового web-приложения с уже существующей системной базой данных
Разработка и интеграция интернет- и интранет-приложений
Перевод web-приложений на другую платформу или на последнюю версию платформы, перевод унаследованных приложений, подсоединение серверов и баз данных
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.