Как я могу проверить, если и индекс ArrayDeque пуст?
Я пытаюсь добавить несколько строк в ArrayDeque, но сначала я должен проверить, не заполнен ли уже этот индекс. Как я могу это сделать?
У меня есть это:
public void processarEntrada(String n){
for ( int i = 0; i <= 3; i++){
planta.add(n);
Каждый индекс должен быть пустым перед добавлением чего-либо
3 ответа
Вот хороший пример для вас.
import java.util.ArrayDeque;
import java.util.Iterator;
public class ArrayDequeTest {
public static void main(String... args){
ArrayDeque<String> aq= new ArrayDeque<String>();
aq.add("A");
aq.add("B");
aq.add("C");
//offerFirst-adds elements at the front of the ArrayDeque
aq.offerFirst("D");
//offerLast inserts the element at the last of ArrayDeque
aq.offerLast("E");
Iterator<String> itr= aq.iterator();
while(itr.hasNext()){
System.out.println(itr.next());
}
}
ArrayDeque Java документ
У массивов нет ограничений по емкости; они растут по мере необходимости для поддержки использования.
добавить (E e)
Вставляет указанный элемент в конце этой очереди.
add
Метод создаст новый индекс и добавит элементы, которые индексируют.
Каждый индекс должен быть пустым перед добавлением чего-либо
Никакой дополнительной работы не требуется для реализации этого.
У меня была небольшая проблема, чтобы полностью понять вопрос. Я понял, что вы хотите добавить его в ArrayDeque, если только если массив уже не содержит строку.
Взгляните на документацию по Java:public boolean contains(Object o)
Возвращает истину, если эта дека содержит указанный элемент. Более формально, возвращает true тогда и только тогда, когда в этой деке есть хотя бы один элемент e, такой что o.equals (e).
Поэтому я бы проверил, есть ли он в ArrayDeque, а затем добавил бы его.
if(! planta.contains(theString)) planta.offer(theString);