Misalkan saya memasukkan 5 string dalam file ArrayList
. Akankah urutan penyisipan dan pengambilan dari ArrayList
sama?
java
collections
naga dewa
sumber
sumber
Jawaban:
Ya, ArrayList adalah koleksi yang dipesan dan mempertahankan urutan penyisipan.
Periksa kode di bawah ini dan jalankan:
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); } } }
Menghasilkan keluaran sebagai berikut:
Inserted in 'order': one two three four five Inserted out of 'order': four five one two three
Untuk informasi lebih lanjut, lihat dokumentasi:
List (Java Platform SE7)
sumber
Iya . ArrayList adalah daftar berurutan . Jadi, urutan penyisipan dan pengambilan adalah sama.
Jika Anda menambahkan elemen selama pengambilan , urutannya tidak akan tetap sama.
sumber
Jika Anda selalu menambahkan di akhir, maka setiap elemen akan ditambahkan di akhir dan tetap seperti itu sampai Anda mengubahnya.
Jika Anda selalu memasukkan di awal, maka setiap elemen akan muncul dalam urutan terbalik saat Anda menambahkannya.
Jika Anda memasukkannya di tengah, urutannya akan menjadi sesuatu yang lain.
sumber
Ya, itu akan selalu sama. Dari dokumentasi
add()
Implementasi ArrayListpublic boolean More ...add(E e) { ensureCapacity(size + 1); // Increments modCount!! elementData[size++] = e; return true; }
sumber
Ya tetap sama. tapi kenapa tidak dengan mudah mengujinya? Buat ArrayList, isi, lalu ambil elemennya!
sumber