Объявление массива, разрешающее любое значение типа int в качестве индекса - PullRequest
0 голосов
/ 24 января 2020

Есть ли способ объявить массив int (arr), так что индекс i может представлять любое число <= Integer.MAX_VALUE, которое не может быть известно заранее. </p>

Итак, arr [i] никогда не вернет ошибку, пока значение <= Integer.MAX_VALUE </p>

Я пробовал int[] arr = new int[Integer.MAX_VALUE], но это требует слишком много места и неосуществимо.

1 Ответ

3 голосов
/ 24 января 2020

В Java невозможно объявить массив без размера. Вам не нужно занимать память для всех неиспользуемых индексов, используя массив. Что вам нужно, так это карта, которая экономит место для вашего случая использования.

    Map<Integer, Object> index = new HashMap<>();

    //store
    index.put(1, "Value 1");
    index.put(2, "Value 2");

    //retrieve
    index.get(1); //returns: Value 1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...