Easily top 3 programming teachers on youtube. No joke. You seem to answer the exact questions that a newbie would asks and you answer in such a way that gives exactly the information that is needed.
Agreed! I´m a first semester Computer Science student and we must do these little coding exercises. The lectures don´t really help, but these videos really got me through these tasks.
PLEASE DONT STOP TEACHING THIS THINGS.. I HAVE WATCHED A LOT OF GUYS LIKE U ON RUclips AND UR ONE OF THE BEST. AND STILL I LOVE JAVA MORE EVEN AFTER MEETING PYTHON
Great video. Two things....it's considered good practice to use the interface on the left side so List instead of ArrayList before the variable name. And while you are right that the ArrayList itself can grow and shrink it's really important to be aware that the array that backs the ArrayList (yes there's an array hiding inside the ArrayList implementation!) does not shrink automatically after the ArrayList has grown...this can be very significant when profiling the memory footprint of an application. Lastly, it would be really good to have a video on why you'd pick a primitive representation over its Object form.....performance, memory usage, etc.
I love how my school explains these things in 10 videos and it takes over 5 hours to watch all of them, while I can easily learn it from your video in just 18 min
Watching your videos helps me understand so much better. You explain everything perfectly and add in the little important details that most books or instructors seem to not mention, Thank you!
Dude, I swear to God how can you explain so well that I didn't get distracted. bro when my teachers explain I lose focus so fast, dude keep it going you are amazing.
Thanks so much for sharing this video! We watched this in my AP CS A course after finishing a unit on Arrays and you did a great job of giving us an intro to ArrayLists.
You are one of the smartest teachers on youtube… I love your teaching style…Whenever I want to learn a java topic, I first search it on your channel because you explain every topic in a very simple way. Not too much of information not too less… just as much as needed for a beginner… My favorite ❤️
You're the best, sincerely, thank you. The online textbook my university uses is extremely dry and hard to understand. It's always so much better to see someone show how to do something by doing and breaking it down in simple terms. Thank you so much again!
you are 100% my go to person on RUclips for beginner tutorials -> explanations are always really beginner friendly and so clear and easily digestible. Thanks a ton man
this is the best java tutorial i have ever watch , i wish John had a complete series from the basics up, i can beat my chest and say i understand the differences between Arrays and Array list, I recommend it for anyone looking up the internet for answers to arrays and array list
Dude, thanks a lot. I’m from Brazil and just had 3 hours of class in my own language and couldn’t get what I got in 17 min in your video. U r a legend.
I've been out of the Java Ecosystem for years, but I randomly got to your channel I have been enjoying just listening on some of the details of Java again. Great content.
I been using java for over a decade and I have still been enjoying your videos! You explain things very well and even these basic concepts are engaging to watch lol
Quality content, great at teaching, quality video and the most important for me is that as a non native English speaker I can perfectly understand everything you're saying. This channel deserves at least 1 million subscribers and hundreds of thousands views. Keep it up, man. 🥂
Cool video. So informative yet so clear and easy to understand. I’m learning java programming as a hobby language and your explanation is the best I have seen on RUclips!!!
Im a student in south korea! Ive been having a hard time learnjng java on my own still im good at python or javascript! I love your java lectures. Thanks a lot!!!!
Such a lifesaver, I'm currently working for our activity involving arrays and this video showed up. Very informative, no subtle introduction just worth of my remaining time haha. Thank you so much!
My first video and I just want to say that please keep going. This helped me in so many ways. Easy to understand explanation and very helpful interaction. God bless you. You have a subscriber! 🙏🏽👏🏾👏🏾👏🏾👏🏾👏🏾
Wow. I compare you with my Java Prof at Uni Rheinland, Germany. He thought he was cool, but it took me long, to get the Java basics, while listening to his lectures. Your teaching method is amazingly more efficient in contrast to his. I am slow in my comprehension, not very intelligent, but within 15 minutes, you were able to help me resolving an issue revolving about some ArrayList-storage of Long Integers in the lower scale of billions of iterations and the numerical output in the order of a quadrillion (found some java JVM memory issues here). My bad programming :( I applaud your generous input into our Java community.
my english its not so good, but you speak so clearly so nice i understand everything in your videos. As an Java beginner i am very very thankfull to you!
This channel and its content its excellent.. im learning Java and I found it so much easier with these videos than my actual lectures. Also the edition of these videos is great. Please dont ever stop making videos about Java. I honestly think is by far the best there is on youtube, and all divided on little videos so it doesnt feel overwhelming like starting a new course.
I normally do not comment on videos but I was very impressed by this video. I would not consider myself a newbie when it comes to coding with java. With that being said to often video do not go in-depth enough to to explain advanced questions relating to specific topics. Right now I am studying micro process relating to java. You answered my question on whether ArrayList are dynamic or fixed along with answer my question on whether or not this micro process would have a large impact on the run time. With that being said I still have one question about ArrayList you did not answer, ArrayList use the generic indicator "< >"(Dimond operator). I was hoping to learn more about how this aspect of ArrayList ties into its functionality. As of right now my understanding is that ArrayList work as a generic class, allowing it to take in/store a wide range of data types. if this is the case I would love to know more about how this ties into the fact it cant work with primitive types and only objects of type class(rapper classes). If you have any resources or information on why ArrayList use the generics indicator "< >" I would love to look into it. Once again thank you for your very informitave video.
The performance difference does add up if you’re using a ton of arrays in your code, or if you’re iterating a lot over the same array(s). With ArraysList Java has to do dynamic allocation behind the scenes, meaning it has to allocate new memory AND copy all the elements from the previous array list whenever you want to resize to a new larger array list. It can definitely slow down your code if you have lots of these lying around or if you’re iterating a lot.
Could you specify out of both of them which were to be faster if used non iteratively many times or even if one of them is to be faster how much of a time difference would it make?
Glad that you've mentioned that ArrayList do so much behind the scenes, I'd have loved to see you go more in depth regarding the difference in speed and how they really work at a lower level, But again as you said the difference between both is barely noticeable. Thanx dude keep at it
I wish I started learning from youtube a month ago. Not learning anything in college programming. Going to school for Networking + Cyber security so this is my last programming class. You explained this better than my last 4 weeks in class going crosseyed.
I think the thing missing from your oherwise excellent tutorial here is _why_ you'd want a fixed array vs a dynamic one. Really, everything a fixed array can do, a dynamic one can as well, so why bother with the headache? And the answer is performance. Heap Memory allocation is expensive, and an array uses contiguous memory; so when a dynamic array gets added too and grows and there's not enough room for expansion in contiguous memory, the whole thing gets copied to a new location where there is room, with the old one marked to be swept for later. This is a very slow and cpu intensive operation. But it's useful for the types of situations where you don't know for sure how big or small something might be up front. But if you know you're generating a 2d map of 32x32, use fixed. If you know you're getting at most 5 records from your database, use fixed. Why? Because when declaring the fixed array variable it allocates enough general memory to store that many of that object or primitive, once. Overwriting an element's null or existing value with another value is a _faaarrrrr_ less expensive operation. And while the conveienice of a foreach loop is indeed a nice and safe way to loop, don't forget there's nothing really wrong with setting some upper limits where it makes sense, and definitely saying "hey this is exactly how much memory I will probably need to do this", hydrate the elements with the values you get, and during your normal for loop through the data just check for null and break out. Always ask yourself when you creating a dynamic array... do you _actually_ need to be adding and removing elements? If the answer is yes, go for it, but you might be surprised to learn just how often you dont need it. But I still wouldn't use the the actual "fixed" arrays, those method the ArrayList wrapper comes with are just too handy. But if you supply an integer into the contructor of the ArrayList? It'll create the intiial array with that many values _once_. ( `new ArrayList(500)` ) That gives you _all_ the benefits of what the fixed array does, with all the benefits of what the dynamic array wrapper provides (including the ability to add and remove elements if you must)
Should point out that if you're stuck in a situation where you absolutely have to work with arrays, you can still use the Arrays utility class to provide some of these conveniences, which gives you e.g. Arrays.sort(arr), Arrays.copyOf(arr, len) for resizing, Arrays.toString(arr) for pretty array formatting, etc. You can also iterate over them with e.g. for (String str : strArray). At the same time, while it is true these capabilities are not strictly limited to Lists or Collections only, I do end up still using them almost exclusively for the reasons you shared; just the sheer productivity they provide for the time spent coding is usually reason enough to justify the overhead. Thanks for the video!
I'm working on an adaptation of 2 REST API I did on Node with MongoDB to Spring Boot with MySQL. But every once in a while it's great go back to the hows and whys of Java. 👏👏👏
I’m here because I’m writing OCA in 5 weeks, I love how you explain and on point on what is expected. I would love to go through your learning but I see you not available on UDEMY
Your are awesome man ❤️ You teach so nice. You are adding every information about the topic into a single video. And also videos are not too lengthy. Loved to watch every videos you posted. Don't stop please.
Having spent a semester learning and working with C (and now learning Java in my CS classes), I have to say that the dynamic size of array lists sure does have me excited :D
Easily top 3 programming teachers on youtube. No joke. You seem to answer the exact questions that a newbie would asks and you answer in such a way that gives exactly the information that is needed.
who is rest?
@@ilhammammadli4560 Corey Schafer is one of them for sure.
Agreed! I´m a first semester Computer Science student and we must do these little coding exercises. The lectures don´t really help, but these videos really got me through these tasks.
I wish our professors explain like this, the explanation is so clear
PLEASE DONT STOP TEACHING THIS THINGS.. I HAVE WATCHED A LOT OF GUYS LIKE U ON RUclips AND UR ONE OF THE BEST. AND STILL I LOVE JAVA MORE EVEN AFTER MEETING PYTHON
i can relate to that❤😎👌
I didn't see the DONT and I got really confused
Caps Lock. The cruise control to cool 😎
Axper angleren chem xosum ches kara bacatres incha patmum?
@@spacepowerofficial1187 PLEASE STOP TEACHING
imagine
You explain diamond operators (starting at 4:19) in 20 seconds better than others who have taken over 5 minutes. Well done sir.
This dude is the man. His videos are better than others because he answers the question why. Why do we do it this way? Keep it up dude.
you are going to have million subscribers one day, already telling ya, you teach so well :)
I Second that
That's a nice notion but no he wont. Programming is not that popular. Only stupid things are popular, entertainment and food and monkeying around
I agree... he is great teacher, I love his coding tutorials cuz they are the ones that are among the most understandable and well-explained:)
indeed
He is close
Great video. Two things....it's considered good practice to use the interface on the left side so List instead of ArrayList before the variable name. And while you are right that the ArrayList itself can grow and shrink it's really important to be aware that the array that backs the ArrayList (yes there's an array hiding inside the ArrayList implementation!) does not shrink automatically after the ArrayList has grown...this can be very significant when profiling the memory footprint of an application. Lastly, it would be really good to have a video on why you'd pick a primitive representation over its Object form.....performance, memory usage, etc.
I love how my school explains these things in 10 videos and it takes over 5 hours to watch all of them, while I can easily learn it from your video in just 18 min
I freaking love the way you approach the subject on your videos... It's so simple and yet, complete; I can understand everything so easily.
Watching your videos helps me understand so much better. You explain everything perfectly and add in the little important details that most books or instructors seem to not mention,
Thank you!
Dude, I swear to God how can you explain so well that I didn't get distracted. bro when my teachers explain I lose focus so fast, dude keep it going you are amazing.
RUclips algo sucks for not recommending this wonderful video for Java learner! But better late than never!
Thanks so much for sharing this video! We watched this in my AP CS A course after finishing a unit on Arrays and you did a great job of giving us an intro to ArrayLists.
I was not expecting such a easy to understand, and great tutorial like this! thank you so much
You are one of the smartest teachers on youtube… I love your teaching style…Whenever I want to learn a java topic, I first search it on your channel because you explain every topic in a very simple way. Not too much of information not too less… just as much as needed for a beginner… My favorite ❤️
You're the best, sincerely, thank you. The online textbook my university uses is extremely dry and hard to understand. It's always so much better to see someone show how to do something by doing and breaking it down in simple terms. Thank you so much again!
Thanks dude, you make everything so simple!
You're the best because you speak fast and get direct to the point with the exact needed amount of information, period.
you are 100% my go to person on RUclips for beginner tutorials -> explanations are always really beginner friendly and so clear and easily digestible. Thanks a ton man
you are my hero man, I've been using fixed array my whole life, you're best than my professors in college
this is the best java tutorial i have ever watch , i wish John had a complete series from the basics up, i can beat my chest and say i understand the differences between Arrays and Array list, I recommend it for anyone looking up the internet for answers to arrays and array list
Please do not stop teaching, you are great!!!!!!
Just searched for a good video and wow I could not have found a better one. Thanks a lot.
90% of my Java class success is owed to you. thanks man!
Dude, thanks a lot. I’m from Brazil and just had 3 hours of class in my own language and couldn’t get what I got in 17 min in your video. U r a legend.
This video took me only 17 mins to get fully understand the basic concept of Array and ArrayList.
Thank you.
Thanks much John! Because of you I have cracked 2 interviews. Loads of love from India. Keep teaching us!🎉
Amazing. In 15 minutes I've learned more from you than I have in 10 weeks from my CSC205 professor...
This channel is really underrated, I learned a lot just from this video.
You’re doing great. Thank you John
Thumbs up i searched so many tutorials but find yours the straight to the point one
John, I'm just getting started in Java and I appreciate you. Commenting to help the algorithm.
Literally I was crying after my class cause the teacher really did not explain as clear as this video. Honestly, thanks a million!🥰⭐
John, I discovered you yesterday and you are one of the best!
I've been out of the Java Ecosystem for years, but I randomly got to your channel I have been enjoying just listening on some of the details of Java again. Great content.
YOU ARE MY NEW TEACHER RIGHT NOW ON RUclips. I WANT TO SET MYSELF ON A MISSION TO WATCH ALL YOUR JAVA VIDEOS! WELLDONE!!!
You can do it, I believe in you!
I been using java for over a decade and I have still been enjoying your videos! You explain things very well and even these basic concepts are engaging to watch lol
You cannot believe how much my future is dependent on you. Keep at it John. Your work is amazing man. God bless
I learn more from you than college professors. You flow through your explanations and it really helps someone like me with adhd lol
Quality content, great at teaching, quality video and the most important for me is that as a non native English speaker I can perfectly understand everything you're saying. This channel deserves at least 1 million subscribers and hundreds of thousands views. Keep it up, man. 🥂
Cool video. So informative yet so clear and easy to understand. I’m learning java programming as a hobby language and your explanation is the best I have seen on RUclips!!!
I am literally I am shocked how come you do not have 1 million subscribes ..the way you teach is awsome.
English is not even my first language but I understood most of the things you said, this is pretty helpful, you will be big one day
Im a student in south korea! Ive been having a hard time learnjng java on my own still im good at python or javascript! I love your java lectures. Thanks a lot!!!!
I'm using these videos to prepare for my first year Java course. Thank you so much!
Thanks i am currently taking java in college and your videos really help alot
Such a lifesaver, I'm currently working for our activity involving arrays and this video showed up. Very informative, no subtle introduction just worth of my remaining time haha. Thank you so much!
My first video and I just want to say that please keep going. This helped me in so many ways. Easy to understand explanation and very helpful interaction. God bless you. You have a subscriber! 🙏🏽👏🏾👏🏾👏🏾👏🏾👏🏾
You are really superman.. Because your video helpful to everyone... I saw a video from tamilnadu in south India....... Your are my best teacher
Wow. I compare you with my Java Prof at Uni Rheinland, Germany. He thought he was cool, but it took me long, to get the Java basics, while listening to his lectures. Your teaching method is amazingly more efficient in contrast to his. I am slow in my comprehension, not very intelligent, but within 15 minutes, you were able to help me resolving an issue revolving about some ArrayList-storage of Long Integers in the lower scale of billions of iterations and the numerical output in the order of a quadrillion (found some java JVM memory issues here). My bad programming :(
I applaud your generous input into our Java community.
my english its not so good, but you speak so clearly so nice i understand everything in your videos. As an Java beginner i am very very thankfull to you!
Man, John! Thank you so much! I‘m about to start my first developer job and see your videos daily! You are so great help!!! Please keep going!
as I was watching I thought "BUT-BUT you cant DO THAT!" and then you wrote "//you can't do that "
and i got just a nice ass dopamine hit, thank you.
Liked this video , John. I have started to code in Java , after 1.5 year with C and C++. Now i'm learning some differences from you. Keep up.
This channel and its content its excellent.. im learning Java and I found it so much easier with these videos than my actual lectures. Also the edition of these videos is great. Please dont ever stop making videos about Java. I honestly think is by far the best there is on youtube, and all divided on little videos so it doesnt feel overwhelming like starting a new course.
Just like Python has a Sentdex, Java has a John 💞💞 You guys are awesome!
I normally do not comment on videos but I was very impressed by this video. I would not consider myself a newbie when it comes to coding with java. With that being said to often video do not go in-depth enough to to explain advanced questions relating to specific topics. Right now I am studying micro process relating to java. You answered my question on whether ArrayList are dynamic or fixed along with answer my question on whether or not this micro process would have a large impact on the run time. With that being said I still have one question about ArrayList you did not answer, ArrayList use the generic indicator "< >"(Dimond operator). I was hoping to learn more about how this aspect of ArrayList ties into its functionality. As of right now my understanding is that ArrayList work as a generic class, allowing it to take in/store a wide range of data types. if this is the case I would love to know more about how this ties into the fact it cant work with primitive types and only objects of type class(rapper classes). If you have any resources or information on why ArrayList use the generics indicator "< >" I would love to look into it. Once again thank you for your very informitave video.
You would be an amazing CS professor, thank you for saving my degree 🙏
The performance difference does add up if you’re using a ton of arrays in your code, or if you’re iterating a lot over the same array(s). With ArraysList Java has to do dynamic allocation behind the scenes, meaning it has to allocate new memory AND copy all the elements from the previous array list whenever you want to resize to a new larger array list. It can definitely slow down your code if you have lots of these lying around or if you’re iterating a lot.
Could you specify out of both of them which were to be faster if used non iteratively many times or even if one of them is to be faster how much of a time difference would it make?
Thanks Coding with John! One of the best videos I've seen throwing so much light on this subject.
I am studying from Udemy but I got confused because of the way the tutor explains. However, man you clear those confusions. Thanks man.
This is amazing.The explanation is really easy to follow and understand. I hope many more people can watch and subscribe. Thanks for the tutorial
Glad that you've mentioned that ArrayList do so much behind the scenes, I'd have loved to see you go more in depth regarding the difference in speed and how they really work at a lower level, But again as you said the difference between both is barely noticeable.
Thanx dude keep at it
passing an arraylist to a method? Keep up the great work!
My Exam is on Monday and my teacher did not cover this topic on JAVA. By watching this video I'm prepared for my Exam, thanks very much.
love from India bro....u know exactly how to teach....just amazing
Hey John! Thank you very much for taking the time to teach like this
Just what i am looking for. And u explain like swift and smooth . Tnx
Best Java teacher ever
Bruh
. Hope you gain a ton more subscribers asap.. ur the reason i started learning Java..
I wish I started learning from youtube a month ago. Not learning anything in college programming. Going to school for Networking + Cyber security so this is my last programming class. You explained this better than my last 4 weeks in class going crosseyed.
Thanks, you're a great teacher!! It's incredible how you can make it so easy to understand
John, you are an excellent excellent teacher....I have seen many of your Java videos, always learn fast and solid
this video really deserves that thumbs up. Tnx
Awesome ! Learning java, coming from c++ and js background. This man has taught so much stuff so easily and quickly. Thanks a ton John !
Awesome!! as a refresher I alwasy have to come back and re-study the already-studied topics. Thanks for this great video
I’m new to Java and need to learn for my job. Thanks for the videos!
i love how you explained this rn and em crying co'z I really don't understand it at first. so yeah thank you so much john.
Wow this explained clearly what i've learned in a 3 hours java course in univ.
I think the thing missing from your oherwise excellent tutorial here is _why_ you'd want a fixed array vs a dynamic one. Really, everything a fixed array can do, a dynamic one can as well, so why bother with the headache?
And the answer is performance. Heap Memory allocation is expensive, and an array uses contiguous memory; so when a dynamic array gets added too and grows and there's not enough room for expansion in contiguous memory, the whole thing gets copied to a new location where there is room, with the old one marked to be swept for later. This is a very slow and cpu intensive operation. But it's useful for the types of situations where you don't know for sure how big or small something might be up front.
But if you know you're generating a 2d map of 32x32, use fixed. If you know you're getting at most 5 records from your database, use fixed. Why? Because when declaring the fixed array variable it allocates enough general memory to store that many of that object or primitive, once. Overwriting an element's null or existing value with another value is a _faaarrrrr_ less expensive operation. And while the conveienice of a foreach loop is indeed a nice and safe way to loop, don't forget there's nothing really wrong with setting some upper limits where it makes sense, and definitely saying "hey this is exactly how much memory I will probably need to do this", hydrate the elements with the values you get, and during your normal for loop through the data just check for null and break out. Always ask yourself when you creating a dynamic array... do you _actually_ need to be adding and removing elements? If the answer is yes, go for it, but you might be surprised to learn just how often you dont need it.
But I still wouldn't use the the actual "fixed" arrays, those method the ArrayList wrapper comes with are just too handy. But if you supply an integer into the contructor of the ArrayList? It'll create the intiial array with that many values _once_. ( `new ArrayList(500)` ) That gives you _all_ the benefits of what the fixed array does, with all the benefits of what the dynamic array wrapper provides (including the ability to add and remove elements if you must)
Thanks again this is exactly what I needed coming from more user-friendly languages
Hope your channel grows that much, that all the subscribers don't fit in an ArrayList...Subscribed!
Awesome way of teaching John.. please don't stop teaching at any cost. This really helps a lot of people !! you deserve more subscribers
Thanks for the help! Java is an interesting language so far, and this definitely helped me see things a bit better.
Should point out that if you're stuck in a situation where you absolutely have to work with arrays, you can still use the Arrays utility class to provide some of these conveniences, which gives you e.g. Arrays.sort(arr), Arrays.copyOf(arr, len) for resizing, Arrays.toString(arr) for pretty array formatting, etc. You can also iterate over them with e.g. for (String str : strArray). At the same time, while it is true these capabilities are not strictly limited to Lists or Collections only, I do end up still using them almost exclusively for the reasons you shared; just the sheer productivity they provide for the time spent coding is usually reason enough to justify the overhead.
Thanks for the video!
I'm working on an adaptation of 2 REST API I did on Node with MongoDB to Spring Boot with MySQL. But every once in a while it's great go back to the hows and whys of Java. 👏👏👏
Man i just love you so much. This is so clear and understandable.
Keep this up man, your videos are helping me so much!
I know this video is old, but thank you so much John!
I’m here because I’m writing OCA in 5 weeks, I love how you explain and on point on what is expected. I would love to go through your learning but I see you not available on UDEMY
It was the carl flash for me I wasn't preparing for that gave me hope on hour 400 of preparing for my java final. Subscribed.
I knew I put those in there for a reason.
Good luck on your final!
Brilliantly explanation. Clear and concise ❤
You are insanely good at teaching!
Your are awesome man ❤️
You teach so nice. You are adding every information about the topic into a single video. And also videos are not too lengthy.
Loved to watch every videos you posted.
Don't stop please.
Superb training. Not boring! Very educational! Highly recommended
You're such a great teacher. Thank you for what you do! I love your videos
Having spent a semester learning and working with C (and now learning Java in my CS classes), I have to say that the dynamic size of array lists sure does have me excited :D
Love the practical way you teach
Hay John, Thanks for the beautiful tutorials, its littel hard to understand you as i am very biggner, but eventually you made your point very clear.
What a great walkthrough! Really enjoyed it. Now to binge on some more of your videos :)
Love your classes! Question. Which IDE are you using?
Yet another great walkthrough. This channel has been such a huge help in my own Java journey.