Похоже, вы пытаетесь использовать a
в качестве ключа и не указывать, есть ли у вас элементы с индексом i < a
.Если вы запустите свой код, когда ll.size() <= a
, вы получите NullPointerException
.
. И если вы добавите элемент с индексом a
, предыдущий элемент на a
теперь будет иметь значение a+1
.В этом случае лучше всего сначала удалить элемент на a
(если он существует), а затем добавить элемент "arbit"
в a
.Конечно, условие выше re: ll.size() <=a
все еще применяется здесь.
Если порядок результатов важен, другой подход мог бы использовать HashMap<Integer,String>
для создания вашего набора данных, а затем извлечь ключи с помощью HashMap<?,?>.getKeySet()
затем сортируйте их в естественном порядке (в конце концов, они числовые), затем извлекайте значения из карты, перебирая набор ключей.Неприятно, но делает то, что вы хотите ... Или создайте свой собственный класс OrderedMap, который делает то же самое ...
Не могли бы вы рассказать, почему вам нужно использовать LinkedList?Важна ли упорядоченность результатов?