Add Element To List Java Using Stream

4 min read Jun 22, 2024
Add Element To List Java Using Stream

Menambahkan Elemen ke List di Java Menggunakan Stream

Dalam pemrograman Java, stream adalah alat yang kuat untuk memproses koleksi data. Salah satu kegunaan stream adalah untuk menambahkan elemen baru ke dalam sebuah list. Namun, stream sendiri tidak memiliki metode untuk langsung menambahkan elemen baru.

Berikut adalah beberapa cara untuk menambahkan elemen baru ke dalam list menggunakan stream di Java:

1. Menggunakan Stream.concat()

Metode Stream.concat() menggabungkan dua stream menjadi satu stream. Dengan menggunakannya, kita dapat menambahkan elemen baru ke dalam list dengan cara berikut:

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Stream;

public class AddElementToList {

    public static void main(String[] args) {
        List list = new ArrayList<>(Arrays.asList("Apple", "Banana", "Cherry"));
        String newElement = "Durian";

        List newList = Stream.concat(list.stream(), Stream.of(newElement))
                .collect(Collectors.toList());

        System.out.println(newList); // Output: [Apple, Banana, Cherry, Durian]
    }
}

Kode di atas membuat stream baru yang menggabungkan stream dari list awal dengan stream yang berisi elemen baru "Durian". Kemudian, stream gabungan tersebut dikumpulkan kembali ke dalam list baru.

2. Menggunakan Stream.of() dan Collectors.toList()

Kita dapat membuat stream baru yang berisi elemen baru, lalu menggabungkan stream baru ini dengan stream dari list awal dan mengumpulkan hasilnya menjadi list baru:

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class AddElementToList {

    public static void main(String[] args) {
        List list = new ArrayList<>(Arrays.asList("Apple", "Banana", "Cherry"));
        String newElement = "Durian";

        List newList = Stream.concat(list.stream(), Stream.of(newElement))
                .collect(Collectors.toList());

        System.out.println(newList); // Output: [Apple, Banana, Cherry, Durian]
    }
}

3. Menggunakan List.addAll()

Meskipun tidak menggunakan stream secara langsung, metode List.addAll() dapat digunakan untuk menambahkan elemen baru ke dalam list.

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class AddElementToList {

    public static void main(String[] args) {
        List list = new ArrayList<>(Arrays.asList("Apple", "Banana", "Cherry"));
        String newElement = "Durian";

        list.addAll(Arrays.asList(newElement));

        System.out.println(list); // Output: [Apple, Banana, Cherry, Durian]
    }
}

Pertimbangan

Meskipun stream bisa digunakan untuk menambahkan elemen baru ke dalam list, metode List.addAll() atau List.add() umumnya lebih efisien untuk operasi penambahan sederhana. Stream lebih cocok untuk operasi transformasi data yang lebih kompleks.

Kesimpulan

Menambahkan elemen baru ke dalam list menggunakan stream di Java mungkin tidak selalu metode yang paling efisien. Namun, dalam kasus-kasus tertentu, stream dapat memberikan solusi yang lebih ringkas dan fleksibel.

Related Post