Chevron Left
Back to Java Programming: Arrays, Lists, and Structured Data

Learner Reviews & Feedback for Java Programming: Arrays, Lists, and Structured Data by Duke University

2,598 ratings
466 reviews

About the Course

Build on the software engineering skills you learned in “Java Programming: Solving Problems with Software” by learning new data structures. Use these data structures to build more complex programs that use Java’s object-oriented features. At the end of the course you will write an encryption program and a program to break your encryption algorithm. After completing this course, you will be able to: 1. Read and write data from/to files; 2. Solve problems involving data files; 3. Perform quantitative analyses of data (e.g., finding maximums, minimums, averages); 4. Store and manipulate data in an array or ArrayList; 5. Combine multiple classes to solve larger problems; 6. Use iterables and collections (including maps) in Java....

Top reviews

Jan 9, 2020

Actually, before I start this course I had not a good idea about OOP concept such as constructors, I have fair confidence about that. thank you duke university making such an arrangement.

Mar 29, 2017

Good and practical training approach to solve real worlds problems. Assignments and quizzes are quite challenging and interesting. Greatly motivates us towards programming and problem solving skills.

Filter by:

1 - 25 of 459 Reviews for Java Programming: Arrays, Lists, and Structured Data

By L.R D G B

Jan 10, 2020

Actually, before I start this course I had not a good idea about OOP concept such as constructors, I have fair confidence about that. thank you duke university making such an arrangement.

By Labib M R

Dec 7, 2015

Despite having some tedious assignments, this course impressed me. It taught me the new topics very well. I liked working on the last few assignments. I would recommend it to learners looking for a good course to learn Java and it's applications.

By Chris T

Jul 20, 2018

The course was pretty challenging (and occasionally frustrating) for a novice programmer, but doable.

I enjoyed the course, and came away with a greater understanding of computers and programming.

By Ong J R

Apr 19, 2019

Good intro to ArrayLists, HashMaps and HashSets, but assignments are very repetitive.

By 蔡鸿斌

Nov 15, 2018

Great task for beginner.

By Γεώργιος Κ

Mar 23, 2020

It's not the perfect course (I would rate it with 4.5) but it is one of the best courses you can have that reassures that certificate corresponds to your learning. If you want truly to learn, be familiar with java's simple processes, obtain some computational ability and not just add a certificate to your resume then this course is for you.

The weak part of this course is that the IDE proposed is not so easy to use and you will not use it again after this course. It may also stall your programming. (Most of the time it was so slow to test some things and simple commands I had to open jshell also.)

This course has simple but interesting datasets, wisely chosen for newbies in programming. The challenges given are simple yet capable to add new skills to the student. The student won't have to search the net to find extra information. Everything is in the lectures and watching the lectures and probably some testing will be more than enough to complete the tasks and simultaneously obtain the skill. The challenges are many, though sometimes tiring, and practice ungraded questions make sure that the graded ones will be answered.

If you already know java and seek specialty, this course is not for you. If you want to learn java as a first or a second programming language probably this could be an ideal course.

By Shayan A B

Jul 11, 2016

This course was very hard but the idea of teaching Java Programming with the application of cryptography was a magnificent one. Cryptography kept me motivated to complete the course as it is an interesting study. Hats off to the teachers for organizing an interesting course and for teaching it really well.

By Arnav P

Feb 29, 2020


By Pranav B

May 20, 2020

So far the best course in the specialization. Thoroughly enjoyed doing all the programming assignments. The last project was fun because it felt like finally applying the principles you learn and building something out of it.

I don't think there's much to complain about with this course. The only one that the object-oriented nature of Java is underutilized so far. Although I gotta say this course takes a big leap from its predecessor with respect to OOP. The multiple classes and their functioning together gives you a nice taste of how OOP works at a high level. Of course, there's much more for OOP to offer that isn't covered here (inheritance, polymorphism, overloading, static methods, error & exception handling in Java to name a few).

One of the good courses I've encountered for learning programming paradigms. Personally, unlike any other course I take, I did not have to make handwritten notes for this one. The instructors were clear and concise and thus there was no need to write down. Most importantly, this is because you *really* learn by doing so there's no need to pen down everything. In case you forget a method, you've always got the documentation to refer to!

On a final note, take this course, you will enjoy it.

By Jade F

Dec 16, 2018

The subject and assignment choices in the course are very practical and enjoyable - the emphasis on cryptography provides a lot of interesting discovery and by the end of the course you're easily cracking very complex encrypted messages. I thought that the log parsing exercises had a lot of real world usefulness for me personally as well.

The course will train you to quickly conceptualize how to solve problems by writing methods that fit assignment requirements and get you on your way to being able to talk about problem solving the way they do at job interviews. I highly recommend this java course - it felt like it had a lot of value all the way through.

By Chitraank S

May 28, 2020

Just like the previous course of this specialization this course too is the best example to learn through the implementation but I won't suggest a beginner start his journey all the way through this course but to be clear with all the basics.

I got the advantage of having read such implementations all it took to try the code and modify it as per demand.

By Qing O

Sep 3, 2016

Very useful course! But it is not challenging enough. My advice: more challenging assignments to be given, and do not give too many detailed steps or instructions in the assignments. Let students themselves to solve the algorithms. Overall, this course is very useful and I like the lectures of Robert the most! His logic is extremely well explained.

By Aman T

Feb 19, 2020

Pretty tough course especially for a beginner, but yeah, it contains the fundamental concepts really important for learning. Some instructions could be more explanatory instead of being vague like ones in week 1, considering week 1 is the start of such alien concepts. Overall, this course on coursera has been a great help to me.

By Toussaint W M

Feb 16, 2020

This course was quite challenging for me but the feeling that i have now after completing it is priceless. It gave me more confidence to start a career as a Junior Java Developer. What seemed to be impossible when i started this specialisation is now possible. Thanks to the instructors and thanks to Coursera indeed.

By David H

Oct 12, 2018

The projects for this course were challenging and interesting, and the videos and activities provided excellent information and were well-presented and explained. I thoroughly enjoyed this class and learned a lot about how to program in Java by making use of hashsets, hashmaps, arraylists, and other structures.

By George F

Feb 26, 2016

The course was appropriately challenging and a sound use of my time. My goals for it were unusual, and it has satisfied them. I feel very strongly that most students should take it in sequence with the other courses in this group and will benefit greatly from it and from completing the entire sequence.

By 钟卓昀

Nov 22, 2017

This is the second course I take about Java, following the specialization of Oriented Programming. This second course is even better than the first one as it becomes more difficult and practical. The course is still wonderful and the teachers are always good at motivating me. Happy Programming!

By Ahmed M A

Jul 26, 2020

The courses in this specialization are not easy, at all. But you will get a great sense of achievement after you finish any of them. you will need to put a lot of time here though.

I am speaking as someone who is not a programmer but I learned Python and some PHP before coming here.

By Ben V D

Sep 21, 2020

Another great course in the specialization. This one was quite difficult, but this also provided a lot of learning. The exercises were more in-depth and there was less guidance, which was frustrating & great for figuring out problems. Thanks for another great course!!

By Gowtham B

Mar 30, 2017

Good and practical training approach to solve real worlds problems. Assignments and quizzes are quite challenging and interesting. Greatly motivates us towards programming and problem solving skills.

By Ahmed N A

Aug 20, 2019

More frustrating than it is helpful. They skim over important topics like object-oriented programming and arrays and barely provide any helpful videos. Their assignments aren't difficult; they're just mind-numbingly annoying. The assignments give you a half-finished program and tell you to add specific methods in very specific ways. You're practically reading an instruction set and doing all the busywork without feeling like a programmer at all. This course won't teach you to think like a programmer, it'll just tell you to spend hours doing boring step-by-step tasks. None of the programs you're making feel like they're yours. Poor course all around, would skip.

By Preston T

Jun 1, 2020

Needs to talk more about the theory and how the data structures work (HashSet, HashMap, ArrayList). What are their efficiencies? None of this was discussed in the class.

By Wesley N

Jan 22, 2020

The course was good for developing routine problem solving skills, as in the first course "Java Programming: Solving Problems with Software". However, the emphasis was supposed to be on Arrays, Lists and Structured data, and I do not think that was the case. These topics were mentioned tangentially to solving the class problems, rather than being the focus.

In summary, I could have learned as much about Arrays, Lists, and Structured Data in about 30 minutes of Googling as I did in 4 weeks of this course. However, it wasn't a total loss, as I became more proficient at the basics, simply because of the exercises.

By Okkes E S

Apr 25, 2018

it gets repetitive after week 2. it becomes unhelpful learning new concepts. I was expecting to learn more about important points of arrays and lists (such as erasing from an iterable, or null exceptions), than repeating similar practice for weeks.

By Amir M O

May 24, 2016

Poorly designed and explained. You do not really gain much knowledge from this course.

I would not recommend my friends and basically others to take this course. There are far better courses out there for much cheaper prices.