Я знаю, что я не могу сохранить значение в индексе ArrayList, который еще не был использован, т. Е. Меньше размера. Другими словами, если myArrayList.size() является 5, а затем, если я пытаюсь сделатьJava: лучший способ сохранить произвольный индекс ArrayList
myArrayList.set(10, "Hello World")
я получить из ошибки границ. Но мое приложение нуждается в этом. Существует ли более элегантный способ, кроме цикла хранения нуля в каждом из промежуточных слотов?
Он смотрит на меня, как:
- Это поведение является одинаковым в Vector
- Если мне нужно, чтобы иметь возможность произвольного доступа (т.е. элемент в позиции X), то мой выбор Vector и ArrayList.
- Я мог бы использовать HashMap и использовать индекс как ключ, но это действительно неэффективно.
Так что же изящное решение того, что похоже на обычный случай. Мне должно быть что-то не хватает ...
Почему вы говорите, что решение карты было бы действительно неэффективным? Насколько строги ваши требования к пространству? –
Почему использование HashMap менее эффективно, чем то, что вы предлагаете с помощью ArrayList? –
Кроме того, вы знаете заранее, что будет самым высоким индексом? –