How to insert an element at the beginning of a stream in Java

2 Answers

0 votes
import java.util.Arrays;
import java.util.stream.Stream;

public class MyClass {
    public static<T> Stream<T> InsertAtBeginning(Stream<T> stream, T element) {
        return Stream.concat(Stream.of(element), stream);
    }
 
    public static void main(String[] args)
    {
        Stream<Integer> st = Stream.of(2, 5, 8, 4, 3);
        
        st = InsertAtBeginning(st, 99);
 
        System.out.println(Arrays.toString(st.toArray()));
    }
}
 
 
 
 
/*
run:
 
[99, 2, 5, 8, 4, 3]

*/

 



answered Mar 16, 2023 by avibootz
0 votes
import java.util.Arrays;
import java.util.List;
import java.util.Collection;
import java.util.stream.Stream;
import java.util.stream.Collectors;

public class MyClass {
    public static<T> Stream<T> InsertAtBeginning(Stream<T> stream, T element) {
        List<T> result = stream.collect(Collectors.toList());
        result.add(0, element);
 
        return result.stream();    
    }
 
    public static void main(String[] args)
    {
        Stream<Integer> st = Stream.of(2, 5, 8, 4, 3);
        
        st = InsertAtBeginning(st, 99);
 
        System.out.println(Arrays.toString(st.toArray()));
    }
}
 
 
 
 
/*
run:
 
[99, 2, 5, 8, 4, 3]

*/

 



answered Mar 16, 2023 by avibootz

Related questions

2 answers 254 views
2 answers 181 views
1 answer 287 views
2 answers 240 views
1 answer 192 views
1 answer 209 views
1 answer 179 views
...