Java: Beginner Guide to Stream API

a thread...

Streams are a way to perform operations on the whole collection of data.

Stream never modifies the source data, it processes it and gives us the result without modifying the original data.
Let's see few popular ways to create stream:

1. Collection. stream()
2. Stream.of(T... values)
3. Arrays. stream()
4. Stream.builder()

Eg:️
Consider stream as a pipeline, where we perform mainly two different operations on the source data:

1. Intermediate Operations(IO)
2. Terminal Operations(TO)

Here's what the stream pipeline looks like:

Source -> Intermediate Operations -> Terminal Operations
Intermediate Operations(IO):

It returns another stream object, after this, we can either call another IO or TO.

Few methods in Stream API for Intermediate operations:
1. filter()
2. map()
3. sorted()

and many more...
Examples:

filter() - filters out the data based on any boolean condition - below we're filtering elements starting with the letter a.

map() - performs some given operation on the whole data set - below we're converting every element to upper case.
Terminal Operations(TO):

It's the last operation done on stream that's why it's called terminal.

This operation returns the final result.

Few methods in Stream API for Terminal operations:
1. collect()
2. count()
3. forEach()

and many more...
Examples:

collect() - collects the elements in the given collection as shown below in the first case it is returning data in the form of a list.

count() - counts the no of the element in the stream and returns in the form of long.
Remember:

A Single pipeline can have multiple Intermediate Operations.

And only a single Terminal Operations.

Eg:
Below, we've used two Intermediate Operations i.e. filter() and map() but only used single Terminal Operation i.e. count().

More from Vikas Rajput

You May Also Like

Trading view scanner process -

1 - open trading view in your browser and select stock scanner in left corner down side .

2 - touch the percentage% gain change ( and u can see higest gainer of today)


3. Then, start with 6% gainer to 20% gainer and look charts of everyone in daily Timeframe . (For fno selection u can choose 1% to 4% )

4. Then manually select the stocks which are going to give all time high BO or 52 high BO or already given.

5. U can also select those stocks which are going to give range breakout or already given range BO

6 . If in 15 min chart📊 any stock sustaing near BO zone or after BO then select it on your watchlist

7 . Now next day if any stock show momentum u can take trade in it with RM

This looks very easy & simple but,

U will amazed to see it's result if you follow proper risk management.

I did 4x my capital by trading in only momentum stocks.

I will keep sharing such learning thread 🧵 for you 🙏💞🙏

Keep learning / keep sharing 🙏
@AdityaTodmal