Suponha que eu insira 5 strings em um ArrayList
. A ordem de inserção e recuperação do ArrayList
será a mesma?
Suponha que eu insira 5 strings em um ArrayList
. A ordem de inserção e recuperação do ArrayList
será a mesma?
Respostas:
Verifique o código abaixo e execute-o:
public class ListExample {
public static void main(String[] args) {
List<String> myList = new ArrayList<String>();
myList.add("one");
myList.add("two");
myList.add("three");
myList.add("four");
myList.add("five");
System.out.println("Inserted in 'order': ");
printList(myList);
System.out.println("\n");
System.out.println("Inserted out of 'order': ");
// Clear the list
myList.clear();
myList.add("four");
myList.add("five");
myList.add("one");
myList.add("two");
myList.add("three");
printList(myList);
}
private static void printList(List<String> myList) {
for (String string : myList) {
System.out.println(string);
}
}
}
Produz a seguinte saída:
Inserted in 'order':
one
two
three
four
five
Inserted out of 'order':
four
five
one
two
three
Para obter informações detalhadas, consulte a documentação: List (Java Platform SE7)
Sim . ArrayList é uma lista sequencial . Portanto, a ordem de inserção e recuperação é a mesma.
Se você adicionar elementos durante a recuperação , a ordem não permanecerá a mesma.
Se você sempre adicionar ao final, cada elemento será adicionado ao final e permanecerá assim até que você o altere.
Se você sempre inserir no início, cada elemento aparecerá na ordem inversa em que você os adicionou.
Se você inseri-los no meio, a ordem será outra.
Sim, sempre será o mesmo. Da documentação
Acrescenta o elemento especificado ao final desta lista. Parâmetros: elemento e a ser acrescentado a esta lista Retorna: verdadeiro (conforme especificado por Collection.add (java.lang.Object))
add()
Implementação de ArrayList
public boolean More ...add(E e) {
ensureCapacity(size + 1); // Increments modCount!!
elementData[size++] = e;
return true;
}
Sim, continua o mesmo. mas por que não testá-lo facilmente? Faça um ArrayList, preencha-o e recupere os elementos!