This repository contains exercises I completed from University of Helsinki's updated online Java Programming course (released 2020, course material available at https://java-programming.mooc.fi/ and https://github.com/rage/java-programming/tree/master/data).
Java Files contains .java files with the code for each exercise (for fast viewing), and Project Folders contains exercise folders which can be compiled (originally created in NetBeans).
I mainly completed Java Programming II (parts 8-14) because I already had sufficient knowledge of the material convered in parts 1-7. Here is an image of my progress:
Here is a summary of all the parts:
Java Programming I
Part 1: Basic Functions (printing, reading, variables, calculations, conditional statements)
Part 2: Repitition (recursion, loops, subdividing programs)
Part 3: Lists, Arrays, Strings
Part 4: object-oriented programming, objects in lists, files, reading data
Part 5: repetitive code, primitive/reference variables, objects and references
Part 6: lists, separating user interface and program logic, testing
Part 7: design patterns, algorithms, larger exercises
Java Programming II
Part 8: HashMaps, equals method, grouping data
Part 9: class inheritance, interfaces, object polymorphism
Part 10: handling collections as streams, Comparable interface, StringBuilder, RegEx, Enum, Iterator
Part 11: class diagrams, packages, exceptions, writing to files
Part 12: type parameters, implementing ArrayList and HashMap classes, randomness, multidimensional data (magic square)
Part 13: graphical user interfaces (GUIs), event handling, views (TicTacToe)
Part 14: data visualization, multimedia in GUIs, GUI game (Asteroids), Maven and 3rd-party libraries