1 - Introduction 7:16
2 - Installation and Hello World 4:31
3 - Understanding Java Foundations 10:30
4 - Arguments and Parameters 10:37
5 - Input and Output 8:10
6 - Variables 7:52
7 - Primitives and Objects 7:35
8 - Variable Declaration and Initialization 6:45
9 - Primitive Data Types 9:57
10 - Scanner Input 7:25
11 - Numeric Data Types and Properties Infinity, NaN 6:04
12 - Numeric Expressions and Operators 9:25
13 - Numeric Methods max, compare, valueOf, parseInt, etc 5:00
14 - string Class string.format, length 8:12
15 - String Methods charAt, concat, contains, indexOf, lastIndexOf 5:59
16 - More String Methods toLowerCase, strip, substring, repeat, equals 6:31
17 - Creating Basic Classes, Methods, and Properties 6:28
18 - String Comparison and Interning 6:39
19 - if, else if, else 7:21
20 - Comparison and Logical Operators 6:28
21 - Switch Statement 7:07
22 - Ternary Conditional Operator 4:59
23 - Single line if Statement 3:36
24 - Intro to Loops While loops 6:50
25 - Do While Loop 4:47
26 - for Loops 5:02
27 - Nested Blocks Nested if 3:11
28 - Nested for Loops Triangles and Pyramids 4:52
29 - Nested While Loops 4:06
30 - Variable Scope with Nested Control Flow 5:10
31 - break 3:38
32 - continue 2:10
33 - Intro to Arrays 5:12
34 - Working with Arrays 4:43
35 - Arrays toString and Arrays deeptoString 2:02
36 - Array Values from Input and for Loop 4:02
37 - Search an Array with for Loop 3:08
38 - Arrays.sort and Arrays.parallelSort 2:15
39 - Array Methods Arrays.fill, Arrays.asList, Arrays.equals 5:05
40 - 2d Arrays 3:29
41 - Working with 2D Arrays 3:02
42 - Iterate through 2D Structures with for Loop 3:46
43 - ArrayList Introduction 3:26
44 - List Interface and ArrayList Implementation 4:45
45 - Working with Lists List Methods 5:32
46 - Quickly Initialize a List with Elements and How to Print List 3:24
47 - for Loops with Lists & How to Modify Each Element 2:36
48 - for each Loop in Java 1:26
49 - Nested for each Loop 2:51
50 - Convert List to an Array 1:46
51 - Sort and Reverse a List with Collections.sort and Collections.reverse 1:24
52 - Intro to Object Oriented Programming OOP 3:22
53 - Class vs Object 4:07
54 - Fields 2:48
55 - Public vs Private 4:12
56 - Methods 3:32
57 - Basics of Creating a Class and Object 2:14
58 - Adding Fields to a Class 1:51
59 - Creating Our First Method 1:19
60 - Arguments and Parameters in Methods 1:59
61 - Return Statement 3:10
62 - Encapsulation 2:50
63 - Create a Getter 2:42
64 - Create a Setter 3:03
65 - Custom Getter and Setter 3:57
66 - ArrayList f Custom Type 2:31
67 - Creating Custom Type in Loop 2:36
68 - Taking Custom Types as Arguments 2:36
69 - Intro to Static Methods 1:27
70 - Creating a Static Method 2:21
71 - Method to take an ArrayList of Custom Type 2:54
72 - Intro to Method Overloading and Optional Parameters 2:24
73 - Working with overloads to Print a User 2:39
74 - Searching a List for Custom Objects 5:20
75 - Method Overriding 2:05
76 - Override toString 1:51
77 - Override Equals 2:10
78 - Overload the Search to Take in a User Object 2:40
79 - Returning Custom Objects 3:37
80 - Passing by Value or Reference 3:32
81 - Intro to Inheritance 1:41
82 - Working with Inheritance 2:52
83 - Virtual in Java 2:18
84 - Creating a Method in User Class and Overriding in a Derived Class 2:24
85 - abstract Class 1:45
86 - abstract Method 1:19
87 - Polymorphism 2:27
88 - Polymorphism in Practice 3:19
89 - Intro to Constructors 3:19
90 - Creating the Default Constructor 2:07
91 - Custom Constructors 2:09
92 - Invoke Parent Class Methods with super keyword 1:56
93 - Readonly Fields Assigned with Constructor 2:35
94 - Intro to Interfaces 4:16
95 - Creating an Interface for Functionality 3:22
96 - Final Methods 1:04
97 - Final Classes 1:13
98 - Intro to enum 1:49
99 - enum in switch 1:04
100 - Conclusion