Java 8 Streams API

Поділитися
Вставка
  • Опубліковано 3 січ 2025

КОМЕНТАРІ • 134

  • @sharanyarai378
    @sharanyarai378 6 років тому +34

    Thanks for video.. is stream are faster than old for loop ? if yes why?

    • @DefogTech
      @DefogTech  6 років тому +49

      Welcome! No, they aren't faster. They just help make the program smaller, succinct and easier to read/maintain.
      Theoretically, using parallel stream can be faster than for-loop, but only if the stream has large number of elements and there are lot of filters/transforms involved.

    • @petmik5022
      @petmik5022 6 років тому +1

      not always, butstreams are used for better read and less boilerplate code and are used for internal commands to do something with values and then reffer them to some another date type etc.

    • @iitgupta2010
      @iitgupta2010 5 років тому +7

      Even sometimes streams are slower than simple for loop if your data is not huge enough.

    • @asashish905
      @asashish905 4 роки тому +14

      But debugging has got tough now a days. 😒😒

    • @tiyasha01
      @tiyasha01 4 роки тому +1

      @@DefogTech it also reduces memory footsprint for intermediate operations

  • @boosan_m
    @boosan_m 3 роки тому +49

    Let’s start with an example....! This is how this video starts, not even a single second of unnecessary content.. spot on .. exceptional 👏

  • @matthiasmoser6096
    @matthiasmoser6096 3 роки тому +8

    I do not know if this was done on purpose, but there is a mistake on the first piece of code: You want if ( min > numbers[ i ] ) at 0:10 . Otherwise, you would be calculating the maximal value.
    But this actually shows a useful aspect of Java Streams: less mistakes while writing trivial code.

    • @m_sharif
      @m_sharif Рік тому +1

      Exactly, that's the usefulness of java streams.

  • @monilpanchal
    @monilpanchal 5 років тому +10

    Amazing introductory video. Adding my two cents to parallel streams:
    Choosing between stream and parallel stream depends on various important factors and also the prerequisites.
    1) Parallel streams internally uses fork-join(divide and conquer technique) to evenly distribute tasks to multiple threads to achieve parallelism. Hence the function/operation(intermediate operation) that is being performed on streams should be STATELESS(parallel friendly) else it will deteriorate the performance than a normal stream.
    2) Breaking and merging of stream should be easy. For example an ArrayList is easy to break and merge than a linkedList.

  • @koleff2541
    @koleff2541 4 роки тому

    Very helpful! I had 3 hours of university lectures and l didnt learn anything. I come to youtube and learned 100% of everything from the video! Thank you!

  • @ciccioosys
    @ciccioosys 4 роки тому +3

    The best and complete tutorial I've seen about Java Streams

  • @dbvs007
    @dbvs007 2 роки тому +1

    This is the best and crisp video on Streams.. covered so much in short time and your audio is also soothing to listen , Thank you for all your hard-work 🙏🙏🙏

  • @sagarmelmatti
    @sagarmelmatti 2 роки тому

    I checked ur channel quiet late , but ur all videos are awesome ,easy to understand and explanation is far better than other channel , thanks

  • @justinjustin5993
    @justinjustin5993 4 роки тому +1

    Superb and clear explanation of multiple important concepts in 15 mins.. Thanks a ton..

  • @farhaankazi7134
    @farhaankazi7134 4 роки тому +1

    Thanks a lot. You gave lot of information in less time as well as you did not make hurry in explanation and speaking speed. Amazing man. I just surprised that how could manage to impart good chunk of info in less time even you spoke at moderate speed, showed code examples, diagrams with explanation, simply amazing. Other good thing in your video is that you also covered Terminal operation in detail with clarity and simplicity of course here also you did it in less without loss of quality. Most of other tutorial skipped explaining Terminal operation part.

  • @sheoran20
    @sheoran20 3 роки тому

    Outstanding !!!!! the best video on streams I came across.

  • @JSreelakshmi-l2t
    @JSreelakshmi-l2t 2 місяці тому

    pls do continue to upload more vedioes like this.. your java concurrancy playlist helped me a lot to understand the multithreading concept.. pls do contine to upload more java indepth vedioes .
    thank you

  • @k9870
    @k9870 5 років тому

    Ur videos are beautifully explained,,,u have that gift,not everyone can explain with such clarity,,,,mind blowing tutorials...ND 8 dislikes are from those people's who can't understand if God comes personally to teach them...thanqqq for this again tutorial...

  • @ShivamSingh-me1nb
    @ShivamSingh-me1nb 3 роки тому

    Best video on stream api so far Thankyou very much

  • @GurmeetSingh-yo4db
    @GurmeetSingh-yo4db 4 роки тому +1

    Very nice video to understand streams with examples. I have been following your tutorials they always been amazing with such good content. Real time examples of streams. much appreciated.

  • @venkatasubbareddy.g2283
    @venkatasubbareddy.g2283 5 років тому +5

    I'm simply understood the concept now very well. The way of explanation is awesome. Thanks for wonderful diagrammatic explanation to easily remember the concepts. Thank you so much Defog Tech.

  • @SatyamRaj55
    @SatyamRaj55 2 роки тому

    Very clear explanation, thanks for your effort.

  • @jasagientertainment8432
    @jasagientertainment8432 5 років тому +20

    if ( min > numbers[i] ) the condition has to be min > numbers[i] . otherwise the tutorial is really good.

    • @rabisankarpodder7839
      @rabisankarpodder7839 4 роки тому

      It was for maximum number calculation in old way.

    • @sanijshakya3763
      @sanijshakya3763 4 роки тому +1

      @@rabisankarpodder7839 but he is doing min for stream example so the if logic is wrong.

    • @Elvis_system
      @Elvis_system 3 роки тому

      min > number[i]

  • @athisii_ekhe6167
    @athisii_ekhe6167 3 роки тому

    One of the best videos about streams. Thanks.

  • @jagadishpalle4037
    @jagadishpalle4037 5 років тому +10

    I always admire of ur work. You give more info in less time with good pictorial representation.
    You deserve more subscribers.
    May be changing channel name helps.
    Waiting for more content...

  • @giventavideoshare
    @giventavideoshare 5 років тому

    Defog Tech is a great youtube channel for great explanations for Java Tech related stuff. Thanks.

  • @0312amar
    @0312amar 2 роки тому

    One word Excellent!

  • @nithin_satheesan
    @nithin_satheesan 4 роки тому +2

    Crisp and to the point as always. Keep up the good work! Really appreciate your videos 😊

  • @Hedabal
    @Hedabal 4 роки тому

    Best Java Streams video. 🙏 Finally Understood stream

  • @samarthurs8000
    @samarthurs8000 6 років тому +2

    Awesome explanation! The figures @5:05 and @11:28 makes it so clear to understand.

  • @luminoussheep5270
    @luminoussheep5270 5 років тому +2

    Excellent work! Thank you for taking the time to put this video together and for the clear explanation it contains.

  • @sagar1691
    @sagar1691 4 роки тому

    Very nicely explained

  • @muthusamy1619
    @muthusamy1619 2 роки тому

    Thanks for the video, small correction find the min number in an older way, the if condition was wrong (if (number[i] < min))

  • @anirudhjadhav9663
    @anirudhjadhav9663 3 роки тому

    This video is very interesting. Although!
    The old code to find out the minimum element from the array
    The "if" condition is wrong.
    it's < if ( min < numbers[i] ) >
    the expected should be < if ( min > numbers[i] ) >
    the code in your video will give you the maximum number.

  • @sumitpaul3080
    @sumitpaul3080 4 роки тому

    Honestly speaking, you should make a whole series of Java. Lots of good wishes to you.

  • @nick-sx2zn
    @nick-sx2zn 3 роки тому

    Thanks for this golden content

  • @ishwarchandra5559
    @ishwarchandra5559 3 роки тому

    Best for revision of java stream api

  • @jameswagstaff1962
    @jameswagstaff1962 5 років тому +1

    Incredibly put together and very in depth! This guy is definitely getting a subscribe from me! Thanks

  • @masum.v
    @masum.v 4 роки тому

    You explanation is awesome. Keep going, and thank you very much for you good work.

  • @subramanianchenniappan4059
    @subramanianchenniappan4059 2 роки тому

    Very clear explanation . Useful for interviews 😊😊. Thanks,🙏🙏🙏

  • @rajasundarrajan2066
    @rajasundarrajan2066 2 роки тому

    excellent video, kudos

  • @balaji7370
    @balaji7370 3 роки тому

    Good explanation 🤗

  • @chakrapanikulkarni8256
    @chakrapanikulkarni8256 5 років тому

    Thanks for the video.. Your tutorials are crisp and clear..

  • @venkyv9289
    @venkyv9289 3 роки тому

    Nice explanation

  • @kiranraghuwanshi1012
    @kiranraghuwanshi1012 4 роки тому

    thank you so much for this video, got more idea about stream api .

  • @ahmadfx8962
    @ahmadfx8962 2 роки тому

    Great, Thank you 😘😘😘😘😘😘😘

  • @shellindebted5328
    @shellindebted5328 6 років тому +1

    Great Tutorial Sir!!i would like to caption it as"JAVA8 Streams API--made easy".
    Today on teacher's day, i take the privilege to wish you "Happy Teacher's Day".Let your guidance be always with us.Thank you!!

    • @DefogTech
      @DefogTech  6 років тому

      Thank you for the kind words sir! Happy Teacher's Day to you too!

  • @gajanansirsat4424
    @gajanansirsat4424 3 роки тому

    You are the best…awesome explanation with great examples. Thank you, Keep going.👍

    • @chandrababunaidu739
      @chandrababunaidu739 2 роки тому

      with above code r u getting min number?...Did you tried above code?

  • @tippabatinisantoshkumar2931
    @tippabatinisantoshkumar2931 2 роки тому

    Really amazing...

  • @WondersOfWandering
    @WondersOfWandering 5 років тому +1

    Very well explained. Thank you so much!!!

  • @selvakumarm8948
    @selvakumarm8948 5 років тому

    Great channel with precise explanation. 👍

  • @warneyfied
    @warneyfied 3 роки тому

    Great tutorial. Thank you so much!

  • @bmnaidu2412
    @bmnaidu2412 5 років тому

    Excellent explanation ... Awesome.. Thank you so much.

  • @vivekmishra5876
    @vivekmishra5876 4 роки тому

    awesome explaination

  • @gnanasekaranebinezar7199
    @gnanasekaranebinezar7199 6 років тому

    Awesome Presentation!!! Vivid Explanation about Java 8 Stream!! Good work👏

  • @vijaykumarreddyt3287
    @vijaykumarreddyt3287 2 роки тому

    Great video

  • @alpavaidya412
    @alpavaidya412 4 роки тому

    Ur an excellent teacher...keep it up 😊

  • @rohitumrikar5258
    @rohitumrikar5258 5 років тому

    Nice Explanation thanks

  • @javaforengineersYT
    @javaforengineersYT 4 роки тому

    Great video. Very useful info. Thanks.

  • @srikothapally9810
    @srikothapally9810 4 роки тому

    Thank you for the good presentation.

  • @abhinav9469
    @abhinav9469 5 років тому

    Very nice tutorial

  • @ChittipoluSA
    @ChittipoluSA 4 роки тому

    Thanks for videos. Could you please load on class loader concepts

  • @dktailor123
    @dktailor123 6 років тому

    Thanks for awesome Java 8 stream video plzz add more video if possible

    • @DefogTech
      @DefogTech  6 років тому

      You're welcome! Thank you for the kind words! Will keep adding more, hopefully more frequently

  • @johncerpa3782
    @johncerpa3782 4 роки тому

    Great video!

  • @hyperborean72
    @hyperborean72 4 роки тому +2

    Strangely enough you have a mistake on your first slide. The condition for defining min value is the opposite. Other than that quite informative video - great job.

  • @Togrul280
    @Togrul280 4 роки тому

    This video is amazing !

  • @anuj2307
    @anuj2307 4 роки тому

    Thanks, good tutorial. Just a suggestion, it would be much more efficient to filter the employee first (isActive) and then sort it.

  • @saravanprathi6956
    @saravanprathi6956 4 роки тому

    Thanks a ton for this video!!

  • @akware977
    @akware977 4 роки тому

    Hello thanks for wonderful and clear tutorial..worth a every second in the video.
    Please correct me if I am wrong,
    As per my understanding in stream API we can use multiple intermediate operation(lazy initialization) and single terminal Operation(eager initialization).

  • @PrateekMehtaABDFAN
    @PrateekMehtaABDFAN 2 роки тому

    Will the order of intermediate operations matter for stream to optimize them ?

  • @balajee-v
    @balajee-v 6 років тому

    Super...plz add more videos about java 8 features.... Advance thanks...

    • @DefogTech
      @DefogTech  6 років тому

      Yes sir, will add more soon!

  • @mohammadajaz2844
    @mohammadajaz2844 5 років тому

    Thanks for the Video...!!

  • @Erebus2075
    @Erebus2075 4 роки тому

    this was really good :)

  • @ArvindVerma-ct7oq
    @ArvindVerma-ct7oq 5 років тому

    Awesome !!! thanks a lot

  • @nagesh007
    @nagesh007 2 роки тому

    Awesome

  • @ankurtripathi9799
    @ankurtripathi9799 4 роки тому

    cool put some system design question as well.

  • @whythosenames
    @whythosenames 4 роки тому +1

    1:25 but System.out is an object, why is it then a *static* method reference?

  • @er_ma3
    @er_ma3 5 років тому

    Great👍

  • @karankanojiya7672
    @karankanojiya7672 2 роки тому

    Respect ++ Sir !

  • @yusufsengul69
    @yusufsengul69 6 років тому

    Very clear explanation, thanks for putting it together. It seems like C# LINQ, but for Java.

  • @pradeepanbaluchamy8469
    @pradeepanbaluchamy8469 6 років тому

    Well explained..thanks

  • @pramodcv
    @pramodcv 6 років тому

    Too awesome video

  • @Gus-px7hd
    @Gus-px7hd 5 років тому

    Very nice, thx.

  • @harshitshukla7382
    @harshitshukla7382 6 років тому

    Thanks for the requestes video! Much appreciated :)

  • @mrAshwin06
    @mrAshwin06 4 роки тому

    Thanks mate ! Another excellent video.
    I have a question. I get confused on when to go for .map() method while working with streams

  • @koeber99
    @koeber99 5 років тому +1

    This is great intro to java streams..... however, how are time/space complexity calculated with Java streams?

  • @vaib5917
    @vaib5917 6 років тому +2

    Streams do not apply those intermediate operations until the terminal operation is not found. That's the power of streams, they are lazily evaluated.

    • @DefogTech
      @DefogTech  6 років тому +1

      Agree about the lazy evaluation. Though we hardly ever pass around streams (without terminal operations), unlike Reactive Streams which are meant for that purpose.
      In official documentation, laziness is more about not evaluating elements which are filtered out in previous filter operation, (eg: sorting need not sort duplicate elements, if distinct() is used before it).

  • @ashvajitchauhan608
    @ashvajitchauhan608 5 років тому

    Thanks you so much. Keep it up please

  • @shrenikpatodi4854
    @shrenikpatodi4854 4 роки тому

    great

  • @MuhammadUsama-zf3iu
    @MuhammadUsama-zf3iu 3 роки тому

    I have a question, suppose we have an array arr = {1, 5 ,10}; i want to check odd and even and return a string through steam API like "1o5o10e", for every odd add o and for every even number add e, How can be possible this, please.

  • @mustafakamalsirajudeen8133
    @mustafakamalsirajudeen8133 6 років тому +1

    Waiting for your Lambda tutorial eagerly. Can you post it this week? :)

    • @DefogTech
      @DefogTech  6 років тому +1

      Difficult sir, I will try.. definitely on my list though

  • @dhiabouacida9155
    @dhiabouacida9155 4 роки тому

    thank you

  • @KCHUDJI
    @KCHUDJI 4 роки тому

    U explain concept in very much easier way . Do u have any channel on Udemy for course plz let me knw if any..

    • @DefogTech
      @DefogTech  4 роки тому

      No Udemy course so far. Will start membership on UA-cam soon, and upload courses or exclusive content there. Hope it helps!

  • @geektattoomusic1882
    @geektattoomusic1882 4 роки тому

    About performance: 1 order of magnitude slower stream is.

  • @InterviewDOT
    @InterviewDOT 5 років тому

    Nice presentation :) InterviewDOT

  • @prakhargupta629
    @prakhargupta629 5 років тому

    Nailed it!

  • @AyushSharma-ux4fk
    @AyushSharma-ux4fk 3 роки тому

    Hi, Can you please share the slides as well?

  • @pinkeshbeauty
    @pinkeshbeauty 4 роки тому

    thanks alot

  • @khakr01
    @khakr01 5 років тому

    Great videos. Request to increase the font size in the presentation. The contents are not clearly visible on mobile devices.

    • @DefogTech
      @DefogTech  5 років тому

      sure, will do.. thanks for pointing out!

  • @UditMishra24
    @UditMishra24 5 років тому +6

    In first example, the if condition is wrong.
    It should be -
    if(numbers[i] < min)

  • @codingwithjava7297
    @codingwithjava7297 5 років тому

    Thank you sir

  • @rock5616
    @rock5616 5 років тому

    I have a List of Java Objects, using Stream I'm trying to get a match of an object. If present then i wanna update it, else i wanna add a new Java Object into the existing List. Is there any simpler way of doing it?

  • @raghavasreenivasulu8072
    @raghavasreenivasulu8072 3 роки тому

    finding min value condition is wrong (replace "for (int i = 1; i < numbers.length; i++) {
    if(min>numbers[i]) {
    min=numbers[i];
    }
    }")

  • @shreyassingh6203
    @shreyassingh6203 4 роки тому

    Having filter and then sort is always better than having sort and then filter. Asymptotically same, but still you know what I mean 11:22 min

  • @venkatb8317
    @venkatb8317 4 роки тому

    Hi
    IntStream.range(1, 11),i want to take reverse IntStream.range(11, 2)
    how can we do
    Thanks