ArrayList заменить элемент, если он существует по заданному индексу?

82

Как заменить элемент, если он существует в ArrayList по заданному индексу?

Harinder
источник

Ответы:

182
  arrayList.set(index i,String replaceElement);
dev4u
источник
3
здесь сам вопрос - «заменить элемент при выходе», но во избежание ошибки требуется проверка на null
dev4u
есть ли способ без индекса пропуска в нем ??
Арпит Патель,
@ArpitPatel arrayList.add () может использоваться для добавления нового элемента. Вы не можете указать, где в списке массивов вы хотите добавить что-то без индекса.
Алан
5

Если вам потребуется другой набор функций, я бы посоветовал расширить ArrayList вашим собственным классом. Таким образом, вам не придется определять свое поведение более чем в одном месте.

// You can come up with a more appropriate name
public class SizeGenerousArrayList<E> extends java.util.ArrayList<E> {

    @Override
    public E set(int index, E element) {
        this.ensureCapacity(index+1); // make sure we have room to set at index
        return super.set(index,element); // now go as normal
    }

    // all other methods aren't defined, so they use ArrayList's version by default

}
corsiKa
источник
2

Элемент перезаписывается, если он уже существует в индексе, это поведение по умолчанию: Javadoc .

Или я полностью упускаю вашу точку зрения?

user183037
источник
0

просто используйте этот метод внутри arraylist

list.set(/*index*/,/*value*/)
Юсеф
источник
-1

Просто добавьте перерыв после оператора remove ()

Себастьян Альтамирано
источник
Пожалуйста, не могли бы вы дать исчерпывающий ответ, спасибо
Prags