<aside> 💫 let’s learn Java besties!

hello my coding friends :) squiz here! java is one of the most popular coding languages in the world. many college use java as the core language for the computer science major. if you are interested in pursuing computer science in college, java is a great language to learn!

</aside>

there are many different online resources out there for learning java. there are courses, videos, tutorials, written documentation, cheatsheets, practice problems, & the list goes on! this notion page acts as a homebase for a variety of different java educational resources. at the bottom, i provide my approach for the best way to go about gaining experience in java, especially if you are preparing for an upcoming course in school. happy exploring & coding :)


https://images-wixmp-ed30a86b8c4ca887773594c2.wixmp.com/f/3ac1d00d-7ef7-4c41-ab4b-3f112cf376a2/d9r78xq-3f53a916-7a42-41f4-a9cd-43f651274e86.gif?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1cm46YXBwOjdlMGQxODg5ODIyNjQzNzNhNWYwZDQxNWVhMGQyNmUwIiwiaXNzIjoidXJuOmFwcDo3ZTBkMTg4OTgyMjY0MzczYTVmMGQ0MTVlYTBkMjZlMCIsIm9iaiI6W1t7InBhdGgiOiJcL2ZcLzNhYzFkMDBkLTdlZjctNGM0MS1hYjRiLTNmMTEyY2YzNzZhMlwvZDlyNzh4cS0zZjUzYTkxNi03YTQyLTQxZjQtYTljZC00M2Y2NTEyNzRlODYuZ2lmIn1dXSwiYXVkIjpbInVybjpzZXJ2aWNlOmZpbGUuZG93bmxvYWQiXX0.jFSrlGv6CZTeO_zgQpLWT1SbXhclSXTEMxrkkIzI6qE

resources A-Z list 🛠️

<aside> 💡 tip: to get better at coding, set a goal to practice coding for X amount of minutes a day. the best way to get better at getting is to code!

</aside>

java primers 👀

<aside> 🗣 below are some resources for becoming familiar with basic aspects of Java

</aside>

  1. [geeksforgeeks] java basic syntax
  2. [programiz] java hello world program
  3. [w3schools] java keywords
  4. [codecademy] java doc

java websites 💻

<aside> 🗣 having go-to websites to refer to when learning java is super helpful! below are some popular ones

</aside>

  1. W3Schools
  2. GeeksforGeeks

https://youtu.be/mAtkPQO1FcA

https://www.youtube.com/watch?v=l9AzO1FMgM8

java cheatsheets 📈

<aside> 🗣 it is awesome to have a central place where info can live! below are some java cheatsheets from codecademy. click the link for more!

</aside>

java practice problems 🧠

<aside> 🗣 practice problems are one of the best ways to become more confident with java. below are examples of different online resources filled with practice problems!

</aside>

  1. [[codeHS] java practice problems](https://codehs.com/practice/java?)
    1. Strings
    2. Booleans
    3. Arrays
    4. ArrayLists
    5. Objects
  2. [programiz] java examples
  3. [codingbat] java problems
    1. Warmup-1
    2. Warmup-2
    3. String-1
    4. Array-1
    5. Recursion-1
  4. [practice-it] building java programs, 5th edition
  5. [codestepbystep] java exercises
    1. HelloWorld
    2. LearningToProgram
    3. booleanExpressions
    4. Halloween
    5. insertionSort1

https://open.spotify.com/embed/playlist/37i9dQZF1DX5trt9i14X7j?utm_source=generator

<aside> 💡 tip: being familiar with computer science vocabulary before taking a computer science class makes it a lot easier to retain new info

</aside>

java courses 🎓

<aside> 🗣 taking an online course is a great way to learn java! below are some examples of good courses

</aside>

  1. freeCodeCamp Learn Java Programming
  2. Udemy Java Programming for Complete Beginners
  3. Codecademy Learn Java

projects 💥

<aside> 🗣 creating your own projects is a great way to enhance your programming skillsets! below are websites with different practice projects!

</aside>

  1. [codecademy] projects in java
  2. [hackr.io] 10 best java projects for beginners

https://youtu.be/3nFU4FF_2dw


code snippets 👩‍💻

<aside> 🗣 read the comments for a better understanding of what different lines of code mean

</aside>

// this code is adapted from GeeksforGeeks

// java program to print Hello World 
public class GFG { 
	public static void main(String[] args) {
		// command for printing something to the console in java
		System.out.println("Hello World");
	}
}

output:

Hello World


// this code is adapted from Programiz

// java program to print different arithmetic equations
class Main {
	public static void main(String[] args) {

		// declare variables a and b
		int a = 12;
		int b = 5;

		// addition operator (+)
		System.out.println("a + b = " + (a + b));

		// subtraction operator (-)
		System.out.println("a - b = " + (a - b));
	
		// multiplication operator (*)
		System.out.println("a * b = " + (a * b));

		// division operator (/)
		System.out.println("a / b = " + (a / b));

		// modulo operator (%)
		System.out.println("a % b = " + (a % b));
	}
}

output:

a + b = 17

a - b = 7

a * b = 60

a / b = 2

a % b = 2


// this code is from Programiz

class Main {
 public static void main(String[] args) {
  
   // create an array
   int[] age = {12, 4, 5, 2, 5};

   // access each array elements
   System.out.println("Accessing Elements of Array:");
   System.out.println("First Element: " + age[0]);
   System.out.println("Second Element: " + age[1]);
   System.out.println("Third Element: " + age[2]);
   System.out.println("Fourth Element: " + age[3]);
   System.out.println("Fifth Element: " + age[4]);
 }
}

output:

Accessing Elements of Array:

First Element: 12

Second Element: 4

Third Element: 5

Fourth Element: 2

Fifth Element: 5


5-step squiz approach for gaining experience in java ✨

<aside> 1️⃣ watch “Java in 100 Seconds” and “What is Java?”

these are quick videos that give you rundowns of the java programming language and are a good introduction to learning java!

</aside>

<aside> 2️⃣ read through the java primers

one of the most challenging parts of learning how to code is how unfamiliar coding terminology can be when first getting started. read through one or more of the java primers until you feel comfortable with the vocabulary. refer back to these as you continue learning java

</aside>

<aside> 3️⃣ read + download the java cheatsheets

these are all super, super helpful guides for learning java. i recommend reading through these in the order listed. download and keep them handy as you continue learning

</aside>