Изучаем Java

Вы здесь: Главная >> Java-учебник >> Многомерные массивы в Java

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


Для доступа к элементам многомерного массива применяется несколько индексов. Такие масивы используются для хранения таблиц и других более сложных упорядоченных структур данных. Если многомерные массивы в вашей работе не нужны, можете смело пропустить этот раздел.
Допустим, что вам нужно создать таблицу чисел, показывающих, как возрастет первоначальная инвестиция объемом 10000 долларов при разных процентных ставках, если прибыль ежегодно выплачивается и реинвестируется. Этот сценарий проиллюстрирован в табл. 3.5.

  Таблица 3.5. Рост инвестиций при разных процентных ставках.

Очевидно, что эту информацию лучше всего хранить в двухмерном массиве (или матрице), которую мы назовем balance.

Объявить матрицу в языке Java довольно просто.
Например,
double[] [] balance;

Как обычно, мы не можем использовать массив, пока он не инициализирован с помощью метода new. В данном случае инициализацию можно выполнить следующим образом:
balance = new double[NYEARS][NRATES];

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

int[] [] magicSquare =
{
{16, 3, 2, 13},
{5, 10, 11, 8},
{9, 6, 7, 12},
{4, 15, 14, 1}
};

После инициализации массива к отдельным его элементам можно обращаться с помощью двух пар квадратных скобок, например balance [ i ] [ j ].

Программа, приведенная в качестве примера, сохраняет процентные ставки в одномерном массиве interest, а результаты подсчета баланса для каждого года и каждой процентной ставки — в двухмерном массиве balance. Первая строка массива инициализируется исходным балансом.

В листинге 3.8 эта программа показана полностью.
Листинг 3.8. Программа Compoundlnterest.java
 

 


Партнеры сайта