Jambu biji - Daftar

1. Gambaran keseluruhan

Dalam tutorial ini - kami akan menerangkan cara yang paling biasa dan berguna untuk bekerjasama dengan Daftar menggunakan perpustakaan Jambu .

Mari kita mulakan - dan lihat hanya membuat ArrayList baru menggunakan sintaks Jambu - tanpa yang baru :

List names = Lists.newArrayList("John", "Adam", "Jane");

2. Balikkan Senarai

Pertama, mari kita menterbalikkan Senarai menggunakan Lists.reverse () seperti dalam contoh berikut:

@Test public void whenReverseList_thenReversed() { List names = Lists.newArrayList("John", "Adam", "Jane"); List reversed = Lists.reverse(names); assertThat(reversed, contains("Jane", "Adam", "John")); }

3. Hasilkan Senarai Perwatakan dari Rentetan

Sekarang - mari kita lihat bagaimana memecah String menjadi senarai Watak .

Dalam contoh berikut - kami menggunakan Lists.CharactersOf () API untuk membuat Watak Senarai dari String "John" :

@Test public void whenCreateCharacterListFromString_thenCreated() { List chars = Lists.charactersOf("John"); assertEquals(4, chars.size()); assertThat(chars, contains('J', 'o', 'h', 'n')); }

4. Bahagikan Senarai

Seterusnya - Mari lihat cara membahagi Senarai .

Dalam contoh berikut - kami menggunakan Lists.partition () untuk mendapatkan senarai yang berturut-turut masing-masing dengan ukuran dua:

@Test public void whenPartitionList_thenPartitioned(){ List names = Lists.newArrayList("John","Jane","Adam","Tom","Viki","Tyler"); List
    
      result = Lists.partition(names, 2); assertEquals(3, result.size()); assertThat(result.get(0), contains("John", "Jane")); assertThat(result.get(1), contains("Adam", "Tom")); assertThat(result.get(2), contains("Viki", "Tyler")); }
    

5. Keluarkan Pendua Dari Senarai

Now - mari kita menggunakan helah mudah untuk mengeluarkan salinan dari Senarai .

Dalam contoh berikut - kami menyalin elemen ke dalam Set dan kemudian kami membuat Daftar keluar dari elemen yang tinggal:

@Test public void whenRemoveDuplicatesFromList_thenRemoved() { List chars = Lists.newArrayList('h','e','l','l','o'); assertEquals(5, chars.size()); List result = ImmutableSet.copyOf(chars).asList(); assertThat(result, contains('h', 'e', 'l', 'o')); }

6. Keluarkan Null Nilai dari Senarai

Seterusnya - mari kita lihat cara membuang nilai nol dari Senarai .

Dalam contoh berikut - kami membuang semua nilai kosong menggunakan API Iterables.removeIf () yang sangat berguna dan predikat yang disediakan oleh perpustakaan itu sendiri:

@Test public void whenRemoveNullFromList_thenRemoved() { List names = Lists.newArrayList("John", null, "Adam", null, "Jane"); Iterables.removeIf(names, Predicates.isNull()); assertEquals(3, names.size()); assertThat(names, contains("John", "Adam", "Jane")); }

7. Tukarkan Senarai ke Daftar Tidak Berubah

Akhirnya - mari kita lihat bagaimana untuk membuat salinan yang tidak boleh berubah daripada Senarai - satu ImmutableList - menggunakan ImmutableList.copyOf () API:

@Test public void whenCreateImmutableList_thenCreated() { List names = Lists.newArrayList("John", "Adam", "Jane"); names.add("Tom"); assertEquals(4, names.size()); ImmutableList immutable = ImmutableList.copyOf(names); assertThat(immutable, contains("John", "Adam", "Jane", "Tom")); }

8. Kesimpulannya

Dan inilah kami - tutorial ringkas yang merangkumi sebahagian besar perkara berguna yang boleh anda lakukan dengan Daftar menggunakan Jambu Batu.

Untuk menggali Daftar lebih jauh, lihat panduan Predicates and Functions ke senarai serta panduan mendalam untuk Menyertai dan Memisahkan senarai di Jambu.

Pelaksanaan semua contoh dan coretan kod ini terdapat di projek Guava github saya - ini adalah projek berasaskan Eclipse, jadi semestinya mudah diimport dan dijalankan sebagaimana adanya.