Предположим, я вставляю 5 строк в файл ArrayList
. Будет ли порядок вставки и извлечения из файла ArrayList
одинаковым?
Предположим, я вставляю 5 строк в файл ArrayList
. Будет ли порядок вставки и извлечения из файла ArrayList
одинаковым?
Ответы:
Проверьте приведенный ниже код и запустите его:
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);
}
}
}
Производит следующий вывод:
Inserted in 'order':
one
two
three
four
five
Inserted out of 'order':
four
five
one
two
three
Для получения подробной информации обратитесь к документации: List (Java Platform SE7)
Да . ArrayList - это последовательный список . Итак, порядок вставки и извлечения такой же.
Если вы добавите элементы во время поиска , порядок не останется прежним.
Если вы всегда добавляете в конец, то каждый элемент будет добавлен в конец и останется таким, пока вы его не измените.
Если вы всегда вставляете в начале, то каждый элемент будет отображаться в обратном порядке, в котором вы их добавляли.
Если вставить их посередине, порядок будет другой.
Да, всегда будет так. Из документации
Добавляет указанный элемент в конец этого списка. Параметры: элемент e, который будет добавлен в этот список. Возвращает: true (как указано в Collection.add (java.lang.Object))
add()
Реализация ArrayList
public boolean More ...add(E e) {
ensureCapacity(size + 1); // Increments modCount!!
elementData[size++] = e;
return true;
}
Да, остается прежним. но почему бы просто не проверить это? Создайте ArrayList, заполните его, а затем извлеките элементы!